Alibaba cloudアカウント内またはAlibaba Cloudアカウント間のクラウドリソースにResource access Management (RAM) ユーザーとしてアクセスする前に、さまざまなシナリオに基づいて権限付与を実行する必要があります。 Alibaba cloudアカウント内のクラウドリソースにアクセスするには、RAMユーザーにAliyunADBSparkProcessingDataRole権限を付与する必要があります。 Alibaba cloudアカウント間でクラウドリソースにアクセスするには、他のAlibaba Cloudアカウントに権限を付与する必要があります。 このトピックでは、Alibaba Cloudアカウント内およびAlibaba Cloudアカウント全体で権限付与を実行する方法について説明します。
前提条件
AnalyticDB for MySQL Data Lakehouse Edition (V3.0) クラスターが作成されます。 詳細については、「クラスターの作成」をご参照ください。
Sparkジョブに必要な権限
Sparkジョブを送信するときは、次の権限が必要です。
AliyunADBFullAccess: RAMユーザーはAnalyticDB for MySQLクラスターを管理できます。 詳細については、「RAMユーザーと権限の管理」トピックの「RAMユーザーへの権限の付与」セクションをご参照ください。
AnalyticDB for MySQLデータベースとテーブルの読み書き権限: デフォルトでは、AnalyticDB for MySQLはデータベースアカウントを使用してデータベースとテーブルを管理します。 RAMユーザーとしてデータを読み書きする必要があるSparkジョブを送信する場合は、標準のデータベースアカウントをRAMユーザーに関連付ける必要があります。 詳細については、「RAMユーザーとのデータベースアカウントの関連付けまたは関連付けの解除」をご参照ください。
AliyunADBSparkProcessingDataRole: AnalyticDB for MySQL SparkがObject Storage Service (OSS) やTablestoreなどの他のクラウドリソースにアクセスできるようにします。 詳細については、このトピックの「Alibaba Cloudアカウント内での認証の実行」をご参照ください。
Alibaba Cloudアカウント内での権限付与の実行
Alibaba Cloudアカウント内で権限付与を実行する前に、RAMユーザーを作成する必要があります。 詳細については、「RAM ユーザーの作成」をご参照ください。
認証ページに移動します。
ページの左下隅にある [権限付与に同意する] をクリックして、RAMロールにAliyunADBSparkProcessingDataRole権限を付与します。
RAMロールに権限を付与すると、AliyunADBSparkProcessingDataRoleという名前のサービスロールが自動的に作成され、AnalyticDB for MySQLが他のクラウドリソースにアクセスできるようになります。
Alibaba CloudアカウントのみがRAMユーザーに上記の権限を付与できます。
Alibaba Cloudアカウント全体での権限付与の実行
この例では、Alibaba CloudアカウントA (ID: testAccountID) がAlibaba CloudアカウントB (ID: testAccountID1) のデータにアクセスしたいと考えています。
手順1: Alibaba CloudアカウントBのRAMロールを作成し、ロールに権限を付与する
RAMロールを作成し、Alibaba CloudアカウントaがRAMロールを引き受けることを許可します。
説明すでにRAMロールを作成し、Alibaba Cloudアカウントaにロールの引き受けを許可している場合は、この手順をスキップできます。
Alibaba CloudアカウントBまたはRAM管理者を使用して、RAMコンソールにログインします。
左側のナビゲーションウィンドウで、 .
On theロールページをクリックします。ロールの作成.
では、ロールの作成パネル、選択Alibaba CloudアカウントSelect Trusted Entityパラメータの場合は、次へ.
RAMロールを設定します。
ロール名 フィールドでRAMロールの名前を指定します。 この例では、
admin-oss
が指定されています。(オプション) 注 フィールドに説明を入力します。
[信頼できるAlibaba Cloudアカウントの選択] パラメーターに 他の Alibaba Cloud アカウント を選択し、Alibaba CloudアカウントAのID (
testAccountID
) を入力します。
完了 をクリックします。
RAMロールに権限を付与します。
RAMロールを見つけて、[操作] 列の [入力とアタッチ] をクリックします。
では、正確な許可パネル、セットタイプにシステムポリシーまたはカスタムポリシーポリシー名を入力します。
クリックOK.
クリック閉じる.
Alibaba Cloudアカウントaに属するRAMユーザーがRAMロールを引き受けることを許可するように、信頼ポリシーを変更します。
[ロール] ページで、RAMロールの名前をクリックします。
RAMロールの [基本情報] ページで、[信頼ポリシー管理] タブをクリックします。
[信頼ポリシーの編集] をクリックします。 次のコードをコピーしてコードエディターに貼り付けます。
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "RAM": [ "acs:ram::testAccountID:root" ] } }, { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "testAccoun *** @ ads.aliyuncs.com" ] } } ], "バージョン": "1" }
手順2: Alibaba CloudアカウントaのRAMユーザーを作成し、RAMユーザーがRAMロールを引き受けることを許可する
RAM ユーザーを作成します。
Alibaba CloudアカウントAまたはRAM管理者を使用して、RAMコンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
[ユーザー] ページで、[ユーザーの作成] をクリックします。
[ユーザーの作成] ページの [ユーザーアカウント情報] セクションで、次のパラメーターを設定します。
ログオン名: ログオン名の長さは最大64文字で、英数字、ピリオド (.) 、ハイフン (-) 、アンダースコア (_) を使用できます。
表示名: 表示名の長さは最大128文字です。
タグ: アイコンをクリックして、タグキーとタグ値を入力します。 RAMユーザーに1つ以上のタグを追加できます。 これにより、タグに基づいてRAMユーザーを管理できます。
説明ユーザーの追加をクリックして、一度に複数の RAM ユーザーを作成できます。
[アクセスモード] セクションで、パスワードによるコンソールログイン を選択し、ログオンセキュリティ設定を行います。 設定では、システム生成またはカスタムのログインパスワードを使用するかどうか、次回のログイン時にパスワードをリセットするかどうか、および多要素認証 (MFA) を有効にするかどうかを指定します。 詳細については、「RAMユーザーの作成」トピックの「コンソールアクセス」セクションをご参照ください。
OK をクリックします。
RAMユーザーが任意のロールを引き受けることを許可するポリシーを作成します。
左側のナビゲーションウィンドウで、[権限]> [ポリシー] を選択します。 [ポリシー] ページで、[ポリシーの作成] をクリックします。
[ポリシーの作成] ページで、[JSON] タブをクリックし、次のコードを入力します。
{ "Version": "1", "Statement": [ { "Action": "ram:PassRole", "Resource": "*", "Effect": "Allow" } ] }
[次へ] をクリックしてポリシー情報を編集します。 表示されるページで、ポリシーの名前と説明パラメーターを設定します。
[OK] をクリックします。
RAM ユーザーにポリシーをアタッチします。
On theユーザーページで必要なRAMユーザーを見つけ、権限の追加で、アクション列を作成します。
複数のRAMユーザーを選択し、ページ下部の [権限の追加] をクリックして、RAMユーザーに一度に権限を付与することもできます。
[権限の追加] パネルで、作成したポリシーを [選択済み] セクションに追加します。
[OK] をクリックします。
[完了] をクリックします。