システムポリシーが要件を満たしていない場合は、最小権限の原則を実装するためにカスタムポリシーを作成できます。 カスタムポリシーを使用すると、権限をきめ細かく管理し、リソースアクセスセキュリティを向上させることができます。 このトピックでは、Elastic High Performance Computing(E-HPC)でカスタムポリシーが使用されるシナリオについて説明し、ポリシーの例を示します。
カスタムポリシーとは
Resource Access Management(RAM)ポリシーは、システムポリシーとカスタムポリシーに分類されます。 ビジネス要件に基づいてカスタムポリシーを管理できます。
カスタムポリシーを作成した後、そのポリシーを RAM ユーザー、RAM ユーザーグループ、または RAM ロールにアタッチする必要があります。 これにより、ポリシーで指定された権限をプリンシパルに付与できます。
プリンシパルにアタッチされていない RAM ポリシーは削除できます。 RAM ポリシーがプリンシパルにアタッチされている場合は、RAM ポリシーを削除する前に、プリンシパルから RAM ポリシーをデタッチする必要があります。
カスタムポリシーはバージョン管理をサポートしています。 RAM が提供するバージョン管理メカニズムに基づいて、カスタムポリシーのバージョンを管理できます。
リファレンス
認証情報
カスタムポリシーを使用するには、サービス権限と E-HPC 認証の要件について理解する必要があります。 詳細については、「RAM 認証」をご参照ください。
既存のクラウドリソースを使用して RAM ユーザーに E-HPC クラスタの作成を承認する
次のポリシー例では、RAM ユーザーが仮想プライベートクラウド(VPC)や NAS ファイルシステムなどの既存のリソースを使用してクラスタを作成できるようにします。
RAM ユーザーが新しいリソースを作成できるようにするには、ユーザーに対応する権限を付与する必要があります。 RAM ユーザーを承認する方法の詳細については、「RAM ユーザーに権限を付与する」をご参照ください。
VPC リソース: RAM ユーザーが VPC を作成できるようにするには、
AliyunVPCFullAccessシステムポリシーをユーザーにアタッチする必要があります。 このポリシーは、VPC の作成、構成、管理を含む、VPC へのフルアクセスを提供します。NAS ファイルシステム: RAM ユーザーが NAS ファイルシステムを作成および管理できるようにするには、
AliyunVPCFullAccessシステムポリシーをユーザーにアタッチする必要があります。 このポリシーは、ファイルシステムとマウントポイントの作成を含む、NAS ファイルシステムへのフルアクセスを提供します。
RAM ユーザーが Workbench を使用して Elastic Compute Service(ECS)インスタンスに接続できるようにするには、
AliyunECSWorkbenchFullAccessシステムポリシーがユーザーにアタッチされていることを確認してください。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ram:GetRole",
"ram:CheckServiceLinkedRoleExistence",
"ram:ListResourceGroups"
],
"Resource": "*" // 全てのリソース
},
{
"Effect": "Allow",
"Action": "vpc:DescribeEipAddresses",
"Resource": "*" // 全てのリソース
},
{
"Effect": "Allow",
"Action": [
"cms:QueryMetricList",
"cms:QueryMetricLast"
],
"Resource": "*" // 全てのリソース
},
{
"Effect": "Allow",
"Action": [
"ecs:DescribeEipPrice",
"ecs:DescribePrice",
"ecs:DescribeKeyPairs",
"ecs:DescribeSecurityGroups",
"ecs:DescribeInstances",
"ecs:RebootInstance",
"ecs:RebootInstances",
"ecs:DescribeCloudAssistantStatus",
"ecs:DescribeUserBusinessBehavior",
"ecs:ModifyUserBusinessBehavior",
"ecs:DescribeCloudAssistantSettings",
"ecs:RunCommand",
"ecs:DescribeInvocations",
"ecs:ListServiceSettings"
],
"Resource": "*" // 全てのリソース
},
{
"Effect": "Allow",
"Action": [
"nas:DescribeProtocolMountTarget",
"nas:DescribeFilesets",
"nas:DescribeFileSystems"
],
"Resource": "*" // 全てのリソース
},
{
"Effect": "Allow",
"Action": "bssapi:DescribeInstanceBill",
"Resource": "*" // 全てのリソース
},
{
"Effect": "Allow",
"Action": [
"vpc:DescribeVpcs",
"vpc:DescribeVSwitches"
],
"Resource": "*" // 全てのリソース
},
{
"Effect": "Allow",
"Action": "ehpc:*",
"Resource": "*" // 全てのリソース
}
]
}