Resource Access Management (RAM) は、ユーザーIDとリソースアクセス権限を管理するためにAlibaba Cloudが提供するサービスです。 RAMを使用すると、Alibaba Cloudアカウント内で複数のRAMユーザーを作成および管理できます。 このトピックでは、RAMポリシーを使用してRAMユーザーからAlibaba Cloudリソースへのアクセスを制御する方法について説明します。 たとえば、RAMユーザーに特定のApsara File Storage NASファイルシステムのみを管理する権限を付与できます。
RAMユーザーに権限を付与する場合は、各RAMユーザーに最小限の権限を付与することを推奨します。 必要以上の権限を付与すると、セキュリティ上のリスクが生じる可能性があります。
手順
RAM ユーザーを作成します。 詳細については、「RAM ユーザーの作成」をご参照ください。
RAMユーザーに付与する権限ポリシーを選択します。
権限ポリシーには、システムポリシーとカスタムポリシーがあります。
システムポリシー: Alibaba Cloudが提供するデフォルトの権限ポリシー。 Apsara File Storage NASでは、次のシステムポリシーが一般的に使用されます。
AliyunNASFullAccess (推奨なし): RAMユーザーにNASファイルシステムへのフルアクセスを許可します。 NASファイルシステムのセキュリティを確保するために、RAMユーザーにこの権限を付与しないことを推奨します。
AliyunNASReadOnlyAccess: RAMユーザーにNASファイルシステムへの読み取り専用アクセスを許可します。
カスタムポリシー: カスタマイズされた権限ポリシー。 カスタムポリシーを使用すると、よりきめ細かい柔軟な方法で権限を管理できます。
ビジネス要件に基づいてスクリプトを記述することで、カスタムポリシーを作成できます。 以下の実施例は参照のために提供される。 詳細については、「カスタムポリシーの作成」をご参照ください。
RAMユーザーに権限を付与します。
手順2で選択した権限ポリシーをRAMユーザーにアタッチします。 詳細については、「RAMユーザーへの権限付与」をご参照ください。
例1: RAMユーザーにNASファイルシステムの権限を付与する
RAMユーザーにNASファイルシステムへのフルアクセスを許可する
07d **** 294
ファイルシステムのIDです。 IDを実際の値に置き換えます。
RAMユーザーに特定のNASファイルシステムを表示する権限を付与することはできません。 RAMユーザーに特定のNASファイルシステムへのフルアクセスを付与する場合は、RAMユーザーにすべてのNASファイルシステムを表示する権限を付与し、RAMユーザーに特定のNASファイルシステムを削除および変更する権限を付与します。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "nas:*",
"Resource": [
"acs:nas:*:*:filesystem/07d****294"
]
},
{
"Effect": "Allow",
"Action": "nas:CreateMountTarget",
"Resource": "acs:vpc:*:*:vswitch/*"
},
{
"Effect": "Allow",
"Action": "cms:Query*",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "nas:DescribeFileSystems",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"nas:DescribeAccessGroups",
"nas:DescribeAccessRules"
],
"Resource": "acs:nas:*:*:accessgroup/*"
},
{
"Effect": "Allow",
"Action": [
"vpc:DescribeVpcs",
"vpc:DescribeVSwitches"
],
"Resource": "*"
}
]
}
RAMユーザーにNASファイルシステムを変更する権限を付与する
07d **** 294
ファイルシステムのIDです。 IDを実際の値に置き換えます。
{
"Statement": [{
"Effect": "Allow",
"Action": [
"nas:DescribeFileSystems",
"nas:ModifyFileSystem"
],
"Resource": "acs:nas:*:*:filesystem/07d****294"
}],
"Version": "1"
}
RAMユーザーにすべてのNASファイルシステムを表示する権限を付与する
{
"Statement": [{
"Effect": "Allow",
"Action": "nas:DescribeFileSystems",
"Resource": "*"
}],
"Version": "1"
}
例2: NASファイルシステムのマウントターゲットに対する権限をRAMユーザーに付与する
次のサンプルコードは、IDが07d **** 294
であるNASファイルシステムのマウントターゲットへのフルアクセスをRAMユーザーに付与する方法を示しています。
{
"Statement": [{
"Effect": "Allow",
"Action": [
"nas:CreateMountTarget",
"nas:DescribeMountTargets",
"nas:ModifyMountTarget",
"nas:DeleteMountTarget"
],
"Resource": [
"acs:nas:*:*:filesystem/07d****294",
"acs:vpc:*:*:vswitch/*"
]
}],
"Version": "1"
}
例3: NASファイルシステムの権限グループに対する権限をRAMユーザーに付与する
次のサンプルコードは、RAMユーザーにNASファイルシステムの権限グループへのフルアクセスを許可する方法を示しています。
{
"Statement": [{
"Effect": "Allow",
"Action": [
"nas:CreateAccessGroup",
"nas:DescribeAccessGroups",
"nas:ModifyAccessGroup",
"nas:DeleteAccessGroup",
"nas:CreateAccessRule",
"nas:DescribeAccessRules",
"nas:ModifyAccessRule",
"nas:DeleteAccessRule"
],
"Resource": "acs:nas:*:*:accessgroup/*"
}],
"Version": "1"
}
例4: すべてのNASファイルシステムのモニタリングメトリックを表示する権限をRAMユーザーに付与する
次のサンプルコードは、すべてのNASファイルシステムのモニタリングメトリックを表示する権限をRAMユーザーに付与する方法を示しています。
{
"Statement": [{
"Effect": "Allow",
"Action": "cms:Query*",
"Resource": "*"
}],
"Version": "1"
}
例5: NASファイルシステムのごみ箱を管理する権限をRAMユーザーに付与する
RAMユーザーにNASファイルシステムのごみ箱へのフルアクセスを許可する
07d **** 294
ファイルシステムのIDです。 IDを実際の値に置き換えます。
{
"Statement": [{
"Effect": "Allow",
"Action": [
"nas:EnableRecycleBin",
"nas:DisableAndCleanRecycleBin ",
"nas:UpdateRecycleBinAttribute",
"nas:GetRecycleBinAttribute",
"nas:CreateRecycleBinRestoreJob",
"nas:CreateRecycleBinDeleteJob",
"nas:CancelRecycleBinJob",
"nas:ListRecycleBinJobs",
"nas:ListRecycledDirectoriesAndFiles",
"nas:ListRecentlyRecycledDirectories"
],
"Resource": [
"acs:nas:*:*:filesystem/07d****294"
]
}
],
"Version": "1"
}
NASファイルシステムのごみ箱に一時的に保存されたファイルを復元する権限をRAMユーザーに付与する
07d **** 294
ファイルシステムのIDです。 IDを実際の値に置き換えます。
{
"Statement": [{
"Effect": "Allow",
"Action": [
"nas:GetRecycleBinAttribute",
"nas:CreateRecycleBinRestoreJob",
"nas:CancelRecycleBinJob",
"nas:ListRecycleBinJobs",
"nas:ListRecycledDirectoriesAndFiles",
"nas:ListRecentlyRecycledDirectories"
],
"Resource": [
"acs:nas:*:*:filesystem/07d****294"
]
}
],
"Version": "1"
}
NASファイルシステムのごみ箱からファイルを完全に削除する権限をRAMユーザーに付与する
07d **** 294
ファイルシステムのIDです。 IDを実際の値に置き換えます。
{
"Statement": [{
"Effect": "Allow",
"Action": [
"nas:GetRecycleBinAttribute",
"nas:CreateRecycleBinDeleteJob",
"nas:CancelRecycleBinJob",
"nas:ListRecycleBinJobs",
"nas:ListRecycledDirectoriesAndFiles",
"nas:ListRecentlyRecycledDirectories"
],
"Resource": [
"acs:nas:*:*:filesystem/07d****294"
]
}
],
"Version": "1"
}
NASファイルシステムのごみ箱の設定を変更する権限をRAMユーザーに付与する
07d **** 294
ファイルシステムのIDです。 IDを実際の値に置き換えます。
{
"Statement": [{
"Effect": "Allow",
"Action": [
"nas:EnableRecycleBin",
"nas:UpdateRecycleBinAttribute",
"nas:DisableAndCleanRecycleBin",
"nas:GetRecycleBinAttribute"
],
"Resource": [
"acs:nas:*:*:filesystem/07d****294"
]
}
],
"Version": "1"
}
付録: カスタムポリシー
RAMコンソールを使用して、カスタムポリシーを作成できます。 [設定モード] を [スクリプト] に設定した場合、JSONテンプレートに基づいて [ポリシードキュメント] セクションのパラメーターを設定する必要があります。 ActionおよびResourceパラメーターの値を次の表に示します。 詳細については、「ポリシー要素」をご参照ください。
API | Action | リソース | 説明 | |
ファイルシステム | CreateFileSystem | nas:CreateFileSystem | acs:nas:<region >:< account-id>:filesystem/* | ファイルシステムを作成します。 |
DeleteFileSystem | nas:DeleteFileSystem | acs:nas:<region >:< account-id>:filesystem/<filesystemid> | ファイルシステムを削除します。 | |
ModifyFileSystem | nas:ModifyFileSystem | acs:nas:<region >:< account-id>:filesystem/<filesystemid> | ファイルシステムを変更します。 | |
DescribeFileSystems | nas:DescribeFileSystems | acs:nas:<region >:< account-id>:filesystem/<filesystemid> | ファイルシステムを照会します。 | |
マウントターゲット | CreateMountTarget | nas:CreateMountTarget |
| マウントターゲットを作成します。 |
DeleteMountTarget | nas:DeleteMountTarget | acs:nas:<region >:< account-id>:filesystem/<filesystemid> | マウントターゲットを削除します。 | |
ModifyMountTarget | nas:ModifyMountTarget | acs:nas:<region >:< account-id>:filesystem/<filesystemid> | マウントターゲットを変更します。 | |
DescribeMountTargets | nas:DescribeMountTargets | acs:nas:<region >:< account-id>:filesystem/<filesystemid> | ファイルシステムのマウント対象を照会します。 | |
権限グループ | CreateAccessGroup | nas:CreateAccessGroup | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | 権限グループを作成します。 |
DeleteAccessGroup | nas:DeleteAccessGroup | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | 権限グループを削除します。 | |
ModifyAccessGroup | nas:ModifyAccessGroup | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | 権限グループを変更します。 | |
DescribeAccessGroups | nas:DescribeAccessGroups | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | ファイルシステムの権限グループを照会します。 | |
CreateAccessRule | nas:CreateAccessRule | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | 権限グループのルールを作成します。 | |
DeleteAccessRule | nas:DeleteAccessRule | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | 権限グループからルールを削除します。 | |
ModifyAccessRule | nas:ModifyAccessRule | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | 権限グループのルールを変更します。 | |
DescribeAccessRule | nas:DescribeAccessRule | acs:nas:<region >:< account-id>:accessgroup/<accessgroupname> | 権限グループのルールを照会します。 |