ユーザーエクスペリエンスとセキュリティを向上させるために、Platform for AI (PAI) ワークスペースはAlibaba Cloudのリソースアクセス管理 (RAM) システムに完全に接続されています。 PAIリソースに対するすべての操作は、RAMを使用して認証でき、RAMポリシーの可視性と作成者プロパティに基づいて管理できます。 ワークスペースに接続されているPAIサブサービスのすべての操作は、認証用のワークスペースAPIを使用してRAMにルーティングされます。
概要
RAMポリシーには、認証を有効にする条件を指定するCondition要素が含まれています。 Condition要素を設定して認証範囲を絞り込むことができます。これにより、詳細な権限管理を実現できます。 PAIワークスペースでは、Condition要素は次の表に示すキーと値のペアをサポートします。
キー | 値 |
pai: アクセシビリティ | リソースの可視性。 有効な値:
|
pai:EntityAccessType | リソース作成者。The resource creator.
|
PAIワークスペースのリソースにアクセスする権限をRAMロールに付与
RAMのRAMロールにポリシーをアタッチして、PAIワークスペースのリソースに対するRAMロールへのアクセス許可を付与できます。 ポリシーの詳細については、「ポリシー要素」をご参照ください。
アルゴリズム開発ロールにアタッチされたポリシーの例
{
"Version": "1",
"Statement": [
{
"Action": [
"pai:*"
],
"Resource": "acs:paidsw:*:*:*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"pai:Accessibility": "PRIVATE",
"pai:EntityAccessType": "CREATOR"
}
}
},
{
"Action": [
"pai:*"
],
"Resource": "acs:paidsw:*:*:*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"pai:Accessibility": "PUBLIC"
}
}
}
]
}注:
ステートメントのResource要素は、標準形式acs:<サブサービスコード >:< リージョン >:< アカウントID>: ワークスペース /<ワークスペースID>/<リソース名>/<リソースID>でRAMリソースを指定します。ステートメントには2つの部分があります。
最初の部分では、ポリシーがアタッチされているロールに、現在の認証ユーザーによって作成されたプライベートなリソースに対する操作を実行する権限があることを指定します。
2番目の部分では、ポリシーがアタッチされているロールに、任意のユーザーによって作成されたパブリックリソースに対する操作を実行する権限があることを指定します。
管理者ロールにアタッチされたポリシーの例
{
"Version": "1",
"Statement": [
{
"Action": [
"pai:*"
],
"Resource": "acs:paidsw:*:*:*",
"Effect": "Allow"
}
]
}注:
この例では、ステートメントには特定の情報のみが含まれており、ポリシーがアタッチされているロールに、pai:Accessibilityプロパティとpai:EntityAccessTypeプロパティの値に関係なく、すべてのリソースで操作を実行する権限があることを指定します。
他のロールにアタッチされているポリシーの例
ワークスペースの他のロールにアタッチされているポリシーのCondition要素は、ワークスペースのアルゴリズム開発者ロールにアタッチされているポリシーのCondition要素と同様です。 2つのロールのAction要素は異なります。
RAMの認証ロジック
ワークスペースのロールに対応するRAMポリシーは、RAMユーザーにアタッチされます。 RAMポリシーでは、Condition要素に
pai:Accessibilityとpai:EntityAccessTypeの2つのプロパティが含まれています。 ユーザーは、プロパティの条件が満たされている場合にのみ、APIオブジェクトにアクセスできます。RAMユーザーがAPIオブジェクトにアクセスしようとすると、PAIは認証のためにRAM APIを呼び出し、認証中にCondition要素のプロパティを構成します。
RAMが認証を実行する場合、RAMユーザーはAPIオブジェクトにアクセスする権限を持っている必要があり、PAIがRAM APIを呼び出すときにCondition要素で構成されているプロパティは、RAMユーザーにアタッチされているポリシーのCondition要素で構成されているプロパティと一致している必要があります。 RAMユーザーにアタッチされているポリシーに、Condition要素に
pai:Accessibilityプロパティとpai:EntityAccessTypeプロパティが含まれていない場合、RAM認証中にプロパティはチェックされません。