Serverless App Engine (SAE) は、Alibaba Cloud Resource Access Management (RAM) を介して権限を管理するため、複数のユーザーが Alibaba Cloud アカウントのパスワードまたは AccessKey ペア (AccessKey ID と AccessKey Secret) を共有する必要がありません。これは、セキュリティリスクを軽減するためです。このトピックでは、RAM を使用して SAE で権限付与ポリシーを作成し、権限を構成する方法について説明します。
前提条件
ポリシー言語の基本的な構造と構文を理解している必要があります。詳細については、「ポリシーの構文と構造」および「ポリシーの基本要素」をご参照ください。
RAM ポリシー
権限は、特定のリソースへのアクセスを許可または拒否するために付与されます。ポリシーは、一連の権限で構成されます。承認されたリソースまたは操作セット、および承認条件を指定します。シンプルな言語仕様として機能します。
RAM では、ポリシーはリソースエンティティです。SAE は以下をサポートしています。
システムポリシー: Alibaba Cloud はシステムポリシーを作成および維持します。RAM ユーザーに対して粗粒度の権限制御を提供します。システムポリシーは変更できません。
カスタムポリシー: RAM ユーザーに対するきめ細かい権限制御のために、カスタムポリシーを作成、変更、および削除します。カスタムポリシーバージョンの管理も含まれます。
システムポリシー
RAM ユーザーとして SAE コンソール に初めてログインすると、SAE はウェルカム ダイアログボックスを表示します。RAM コンソールのメインアカウントを通じてサブアカウントの権限を承認します。
システムポリシー
ポリシー名 | 説明 |
AliyunSAEFullAccess | Serverless App Engine (SAE) へのフルアクセスを付与します。このポリシーをアタッチすると、アプリケーションを管理できるようになります。 |
AliyunSLBReadOnlyAccess | Server Load Balancer (SLB) への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、SLB 関連の機能を使用できます。 |
AliyunACMFullAccess | アプリケーション構成管理 (ACM) へのフルアクセスを許可します。このポリシーがアタッチされた後にのみ、SAE の組み込み ACM 機能を使用できます。 |
AliyunECSReadOnlyAccess | Elastic Compute Service (ECS) への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、アプリケーションの作成時に既存のセキュリティグループを選択できます。 |
AliyunOOSReadOnlyAccess | Operation Orchestration Service (OOS) への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、スケジュールされた開始および停止機能を使用して SAE のアプリケーションを一括管理できます。 |
AliyunBSSReadOnlyAccess | 課金管理への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、SAE コンソールの概要ページで購入したリソースプランの残高を表示できます。 |
AliyunARMSReadOnlyAccess | Application Real-Time Monitoring Service (ARMS) への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、SAE の組み込みアプリケーション監視機能を使用できます。 |
AliyunRAMReadOnlyAccess | Resource Access Management (RAM) への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、RAM ユーザーの権限を照会し、必要な権限を付与するように求められます。 |
AliyunCloudMonitorReadOnlyAccess | CloudMonitor への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、SAE の組み込みの基本監視機能を使用できます。 |
AliyunContainerRegistryReadOnlyAccess | Container Registry への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、SAE でイメージを使用してアプリケーションをデプロイするときに Container Registry Enterprise Edition を選択できます。 |
AliyunALBReadOnlyAccess | Application Load Balancer (ALB) への読み取り専用アクセスを許可します。 |
AliyunYundunCertReadOnlyAccess | Certificate Management Service への読み取り専用アクセスを許可します。 |
AliyunEventBridgeReadOnlyAccess | EventBridge への読み取り専用アクセスを許可します。このポリシーがアタッチされた後にのみ、ジョブを作成および更新できます。 |
AliyunSAEFullAccess は、すべての SAE リソースに対するフル権限を付与します。名前空間レベルまたはアプリケーションレベル、あるいは関連製品など、よりきめ細かい権限については、「カスタムポリシー」をご参照ください。
カスタムポリシー
システムポリシーが特定のビジネスニーズを満たしていない場合は、詳細なアクセス制御のためにカスタムポリシーを作成できます。
SAE 権限アシスタントは、SAE 権限の視覚的な構成を容易にし、手動のスクリプト編集なしでポリシー文を生成し、RAM コンソールで RAM ユーザーにカスタムポリシーを作成して割り当てるのに役立ちます。
認証ルール
次の表にリソースを示します。
リソースタイプ | 権限付与ポリシーのリソース記述 |
アプリケーション |
|
次の表にパラメーターを示します。
パラメーター | 説明 |
$regionid | リージョン ID。 |
$accountid | Alibaba Cloud アカウント ID。 |
$namespaceid | 名前空間 ID。デフォルトの名前空間 ID は空で、 説明 名前空間 ID には、小文字または数字のみを含めることができます。 |
$appid | アプリケーション ID。 |
次の例は、リソース記述を示しています。
中国 (上海) リージョンを例にとります。
次の ARN は、ID が 0c815215-46a1-46a2-ba1e-0102a740****、名前空間 ID が test のアプリケーションに関連しています。
acs:sae:cn-shanghai:*:application/test/0c815215-46a1-46a2-ba1e-0102a740****次の ARN は、デフォルトの名前空間に関連しています。
acs:sae:cn-shanghai:*:application/_default/*
ポリシーの例
シナリオ 1: 名前空間レベルの権限を付与する
シナリオの説明: SAE の読み取り権限と、特定の名前空間とそのアプリケーションへの書き込み権限を付与します。
RAM ユーザーは、デフォルトの名前空間、ID が test の名前空間、および名前空間内のアプリケーションに関連するリソースを管理する権限を与えられます。
リソース
アクション
説明
acs:sae:cn-shanghai:*
sae:Query*
Query で始まる API は、中国 (上海) リージョンに関連するすべてのリソースを管理できます。
sae:List*
List で始まる API は、中国 (上海) リージョンに関連するすべてのリソースを管理できます。
sae:Describe*
Describe で始まる API は、中国 (上海) リージョンに関連するすべてのリソースを管理できます。
sae:*Ingress*
Ingress を含む API は、中国 (上海) リージョンに関連するすべてのリソースを管理できます。
sae:*ChangeOrder*
ChangeOrder を含む API は、中国 (上海) リージョンに関連するすべてのリソースを管理できます。
sae:*Pipeline*
Pipeline を含む API は、中国 (上海) リージョンに関連するすべてのリソースを管理できます。
acs:sae:cn-shanghai:*:application/test/*
sae:*
ID が test の名前空間に関連するすべてのリソースと、中国 (上海) リージョンの名前空間内のアプリケーションを管理できます。
{ "Version": "1", "Statement": [ { "Action": [ "sae:Query*", "sae:List*", "sae:Describe*", "sae:*Ingress*", "sae:*ChangeOrder*", "sae:*Pipeline*" ], "Resource": "acs:sae:cn-shanghai:*:*", // 中国 (上海) リージョンのすべてのリソース "Effect": "Allow" }, { "Action": [ "sae:*" ], "Resource": [ "acs:sae:cn-shanghai:*:application/test/*" // 名前空間 ID が test の名前空間と、その名前空間内のすべてのアプリケーション ], "Effect": "Allow" } ] }シナリオ 2: アプリケーションレベルの権限を付与する
シナリオの説明: SAE の読み取り権限と、特定のアプリケーションへの書き込み権限を付与します。
RAM ユーザーは、アプリケーションを管理する権限を与えられます。
アプリケーション
名前空間
アプリケーション ID
アプリケーション 1
test
0c815215-46a1-46a2-ba1e-102a740****
アプリケーション 2
default
e468a92b-1529-4d20-8ab1-9d1595dc****
リソース
アクション
説明
acs:sae:cn-shanghai:*:*
sae:Query*
Query で始まる API は、中国 (上海) リージョンに関連するすべての名前空間とアプリケーションリソースを管理できます。
sae:List*
List で始まる API は、中国 (上海) リージョンに関連するすべての名前空間とアプリケーションリソースを管理できます。
sae:Describe*
Describe で始まる API は、中国 (上海) リージョンに関連するすべての名前空間とアプリケーションリソースを管理できます。
sae:*Ingress*
Ingress を含む API は、中国 (上海) リージョンに関連するすべての名前空間とアプリケーションリソースを管理できます。
sae:*ChangeOrder*
ChangeOrder を含む API は、中国 (上海) リージョンに関連するすべての名前空間とアプリケーションリソースを管理できます。
sae:*Pipeline*
Pipeline を含む API は、中国 (上海) リージョンに関連するすべての名前空間とアプリケーションリソースを管理できます。
acs:sae:cn-shanghai:*:application/test/0c815215-46a1-46a2-ba1e-0102a740****
sae:*
ID が test の名前空間に関連するすべてのリソースと、中国 (上海) リージョンのアプリケーション 1 を管理できます。
acs:sae:cn-shanghai:*:application/_default/e468a92b-1529-4d20-8ab1-9d1595dc****
デフォルトの名前空間に関連するすべてのリソースと、中国 (上海) リージョンのアプリケーション 2 を管理できます。
{ "Version": "1", "Statement": [ { "Action": [ "sae:Query*", "sae:List*", "sae:Describe*", "sae:*Ingress*", "sae:*ChangeOrder*", "sae:*Pipeline*" ], "Resource": "acs:sae:cn-shanghai:*:*", // 中国 (上海) リージョンのすべてのリソース "Effect": "Allow" }, { "Action": [ "sae:*" ], "Resource": [ "acs:sae:cn-shanghai:*:application/test/0c815215-46a1-46a2-ba1e-0102a740****", // アプリケーション 1 "acs:sae:cn-shanghai:*:application/_default/e468a92b-1529-4d20-8ab1-9d1595dc****" // アプリケーション 2 ], "Effect": "Allow" } ] }シナリオ 3: 関連する Alibaba Cloud サービスにアクセスするための権限を付与する
特定のニーズをサポートするために、SAE 上のアプリケーションは、実行時に ECS、SLB、ARMS などの他の Alibaba Cloud サービスの API を呼び出す必要がある場合があります。RAM ユーザーに関連サービスへのアクセスを承認します。たとえば、RAM ユーザーに ECS (AliyunECSReadOnlyAccess)、SLB (AliyunSLBReadOnlyAccess)、および ARMS (AliyunARMSReadOnlyAccess) への読み取り専用アクセスを許可できます。