権限管理

更新日時
Copy as MD

Resource Access Management (RAM) は Alibaba Cloud によって提供される、ユーザーのアイデンティティとリソースの権限を管理するためのサービスです。RAM を使用すると、Alibaba Cloud アカウント (root ユーザー) のキーを他のユーザーと共有することを回避でき、ユーザーに必要最小限の権限を付与できます。RAM ではポリシーを使用して権限付与を定義します。このトピックでは、RAM ポリシーの一般的な構造と、 のポリシーステートメントを構成する要素である「アクション (Action)」「リソース (Resource)」および「条件 (Condition) 」について説明します。 は、RAM コード (RamCode) が yundun-cert で、 OPERATION での権限付与がサポートされています。

一般的なポリシー構造

RAM ポリシーは、一般的に以下のような JSON 構造で構成されます。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "<Effect>",
      "Action": "<Action>",
      "Resource": "<Resource>",
      "Condition": {
        "<Condition_operator>": {
          "<Condition_key>": [
            "<Condition_value>"
          ]
        }
      }
    }
  ]
}        

ポリシーのフィールドに関する説明:

  • Version:ポリシーのバージョン番号。現在のポリシーバージョンは 1 です。

  • Statement:

    • Effect:「許可するか、拒否するか」という、最終的な結果を定義します。有効な値:Allow (許可) または Deny (拒否)。

    • Action:「何をすることができるか、できないか」を定義する、リソースへの具体的な操作を指します。

    • Resource:「何に対して操作を行うか」を定義する、操作の具体的な対象です。対象となるリソースは、ARN (Alibaba Cloud Resource Name) を使用して指定できます。

    • Condition:「どのような状況下でポリシーが適用されるか」という、権限が有効になるための付加的な制約条件を定義します。このフィールドは任意です。

      • Condition operator:条件の演算子。条件キーの値とリクエスト値をどのように比較するかを定義する「比較方法」です。条件演算子は、条件のタイプによって異なります。

      • Condition_key:条件のキー。ポリシーの条件が満たされているかを判断するために、リクエストから参照・チェックされる特定の属性を指します。

      • Condition_value:条件の値。条件キーから取得されたリクエスト値と比較するための、具体的な「基準値」です。

アクション (Action)

下表に、 で定義されたアクションを示します。以下で各列名について説明します。

  • アクション:特定のリソースに対して実行可能な操作。ポリシー構文ではAction要素として指定します。

  • API:アクションを具体的に実行するための API。

  • アクセスレベル:各 API に対して事前定義されているアクセスの種類。有効な値:create、list、get、update、delete。

  • リソースタイプ:アクションが作用するリソースの種類。リソースレベルでの権限をサポートするかどうかを示すことができます。ポリシーの有効性を確保するため、アクションの対象として適切なリソースを指定する必要があります。

    • リソースレベルの権限を持つ API の場合、必要なリソースタイプはアスタリスク (*) でマークされます。ポリシーのResource要素で対応する ARN を指定してください。

    • リソースレベルの権限を持たない API の場合、「すべてのリソース」と表示され、ポリシーのResource要素でアスタリスク (*) でマークされます。

  • 条件キー:サービスによって定義された条件のキー。このキーにより、きめ細やかなアクセス制御が可能になります。この制御は、アクション単体に適用することも、特定のリソースに対するアクションに適用することもできます。Alibaba Cloud は、サービス固有の条件キーに加えて、すべての RAM 統合サービスに適用可能な一連の共通条件キーを提供しています。詳細については、「共通条件キー」をご参照ください。

  • 依存アクション:ある特定のアクションを実行するために、前提として実行が必要となる他のアクション。依存アクションの権限も RAM ユーザーまたは RAM ロールに付与する必要があります。

アクション

API

アクセスレベル

リソースタイプ

条件キー

依存アクション

yundun-cert:GetAssetCount GetAssetCount get

*All Resource

*

なし なし
yundun-cert:DeleteCertificateRequest DeleteCertificateRequest delete

*All Resource

*

なし なし
yundun-cert:DescribeWarehouseCert DescribeWarehouseCert get

*All Resource

*

なし なし
yundun-cert:ListCert ListCert get

*All Resource

*

なし なし
yundun-cert:Encrypt Encrypt none

*All Resource

*

なし なし
yundun-cert:DeletePCACert DeletePCACert delete

*All Resource

*

なし なし
yundun-cert:DeleteUserCertificate DeleteUserCertificate delete

*All Resource

*

なし なし
yundun-cert:ListCsr ListCsr list

*All Resource

*

なし なし
yundun-cert:MoveResourceGroup MoveResourceGroup update

*All Resource

*

なし なし
yundun-cert:ListWarehouse ListWarehouse list

*All Resource

*

なし なし
yundun-cert:Decrypt Decrypt none

*All Resource

*

なし なし
yundun-cert:RenewCertificateOrderForPackageRequest RenewCertificateOrderForPackageRequest create

*All Resource

*

なし なし
yundun-cert:CreateDeploymentJob CreateDeploymentJob create

*All Resource

*

なし なし
yundun-cert:DescribeCloudResourceStatus DescribeCloudResourceStatus get

*All Resource

*

なし なし
yundun-cert:Sign Sign none

*All Resource

*

なし なし
yundun-cert:CreateCsr CreateCsr create

*All Resource

*

なし なし
yundun-cert:Verify Verify none

*All Resource

*

なし なし
yundun-cert:DeleteWarehouse DeleteWarehouse delete

*All Resource

*

なし なし
yundun-cert:DeleteInstance DeleteInstance delete

*All Resource

*

なし なし
yundun-cert:DeleteDeploymentJob DeleteDeploymentJob delete

*All Resource

*

なし なし
yundun-cert:CancelPendingCertificate CancelPendingCertificate update

*All Resource

*

なし なし
yundun-cert:DeleteCloudAccess DeleteCloudAccess delete

*All Resource

*

なし なし
yundun-cert:DescribePackageState DescribePackageState get

*All Resource

*

なし なし
yundun-cert:GetInstanceDetail GetInstanceDetail get

*All Resource

*

なし なし
yundun-cert:DescribeDeployment DescribeDeploymentJob get

*All Resource

*

なし なし
yundun-cert:UpdateInstance UpdateInstance update

*All Resource

*

なし なし
yundun-cert:GetTaskAttribute GetTaskAttribute get

*All Resource

*

なし なし
yundun-cert:ListDeploymentJobResource ListDeploymentJobResource list

*All Resource

*

なし なし
yundun-cert:DeleteWorkerResource DeleteWorkerResource delete

*All Resource

*

なし なし
yundun-cert:ListUserCertificateOrder ListUserCertificateOrder list

*All Resource

*

なし なし
yundun-cert:ListAssetCount ListAssetCount list

*All Resource

*

なし なし
yundun-cert:UpdateDeploymentJob UpdateDeploymentJob update

*All Resource

*

なし なし
yundun-cert:GetCertWarehouseQuota GetCertWarehouseQuota get

*All Resource

*

なし なし
yundun-cert:ListDeploymentJob ListDeploymentJob list

*All Resource

*

なし なし
yundun-cert:ListDeploymentJobCert ListDeploymentJobCert list

*All Resource

*

なし なし
yundun-cert:GetUserCertificateDetail GetUserCertificateDetail get

*All Resource

*

なし なし
yundun-cert:ListCloudResources ListCloudResources list

*All Resource

*

なし なし
yundun-cert:CreateWarehouse CreateWarehouse create

*All Resource

*

なし なし
yundun-cert:CreateCertificateRequest CreateCertificateRequest create

*All Resource

*

なし なし
yundun-cert:UpdateCsr UpdateCsr get

*All Resource

*

なし なし
yundun-cert:AddCloudAccess AddCloudAccess create

*All Resource

*

なし なし
yundun-cert:UploadPCACert UploadPCACert create

*All Resource

*

なし なし
yundun-cert:RevokeWHClientCertificate RevokeWHClientCertificate update

*All Resource

*

なし なし
yundun-cert:CreateCertificateForPackageRequest CreateCertificateForPackageRequest create

*All Resource

*

なし なし
yundun-cert:ListContact ListContact list

*All Resource

*

なし なし
yundun-cert:CancelOrderRequest CancelOrderRequest update

*All Resource

*

なし なし
yundun-cert:GetCsrDetail GetCsrDetail get

*All Resource

*

なし なし
yundun-cert:DescribeDeploymentJobStatus DescribeDeploymentJobStatus get

*All Resource

*

なし なし
yundun-cert:GetMatchedResources GetMatchedResources list

*All Resource

*

なし なし
yundun-cert:ListWorkerResource ListWorkerResource list

*All Resource

*

なし なし
yundun-cert:BatchUpdateNoticeStatus BatchUpdateNoticeStatus update

*All Resource

*

なし なし
yundun-cert:ListInstances ListInstances list

*All Resource

*

なし なし
yundun-cert:GetCertificateDetail GetCertificateDetail get

*All Resource

*

なし なし
yundun-cert:RefundInstance RefundInstance update

*All Resource

*

なし なし
yundun-cert:ListCloudAccess ListCloudAccess list

*All Resource

*

なし なし
yundun-cert:UploadUserCertificate UploadUserCertificate create

*All Resource

*

なし なし
yundun-cert:ListCertWarehouse ListCertWarehouse list

*All Resource

*

なし なし
yundun-cert:ApplyCertificate ApplyCertificate update

*All Resource

*

なし なし
yundun-cert:CreateCertificateWithCsrRequest CreateCertificateWithCsrRequest create

*All Resource

*

なし なし
yundun-cert:GetInstanceSummary GetInstanceSummary get

*All Resource

*

なし なし
yundun-cert:UploadCsr UploadCsr get

*All Resource

*

なし なし
yundun-cert:UpdateWorkerResourceStatus UpdateWorkerResourceStatus update

*All Resource

*

なし なし
yundun-cert:CreateWHClientCertificate CreateWHClientCertificate create

*All Resource

*

なし なし
yundun-cert:UpdateDeploymentJobStatus UpdateDeploymentJobStatus update

*All Resource

*

なし なし
yundun-cert:DeleteCsr DeleteCsr delete

*All Resource

*

なし なし
yundun-cert:ListCertificates ListCertificates list

*All Resource

*

なし なし
yundun-cert:CancelCertificateForPackageRequest CancelCertificateForPackageRequest update

*All Resource

*

なし なし
yundun-cert:RevokeCertificate RevokeCertificate update

*All Resource

*

なし なし
yundun-cert:DescribeCertificateState DescribeCertificateState get

*All Resource

*

なし なし
yundun-cert:GetRiskCount GetRiskCount get

*All Resource

*

なし なし

リソース (Resource)

下表に、 で定義されたリソースを示します。ポリシーステートメントのResource要素で指定することで、特定のアクションの適用対象を設定できます。各リソースは対応する ARN を持ち、一意的に識別されます。ARN はacs:{#ramcode}:{#regionId}:{#accountId}:{#resourceType}形式で、構成要素は以下のとおりです。

  • acs:Alibaba Cloud Service の頭文字で、Alibaba Cloud のパブリッククラウドを指します。

  • {#ramcode}:RAM における具体的な Alibaba Cloud サービスの識別コード。

  • {#regionId}リージョン ID。アスタリスク (*) に設定した場合、リソースがすべてのリージョンに適用することを示します。

  • {#accountId}:Alibaba Cloud アカウントの ID。アスタリスク (*) に設定した場合、リソースがすべての Alibaba Cloud アカウントに適用することを示します。

  • {#resourceType}:具体的な Alibaba Cloud サービスによって定義されたリソースの識別子で、ファイルパスに似た階層構造をサポートしています。アスタリスク (*) に設定した場合、ステートメントがすべてのリソースに適用することを示します。

リソースタイプ

ARN

Certificate
  • acs:sslcertificatesservice::{#accountId}:certificate/{#CertId}
  • acs:yundun-cert:*:{#accountId}:*

条件 (Condition)

下表に、 で定義されたプロダクトレベルの条件キーを示します。このほかに、Alibaba Cloud の共通条件キーを使用することもできます。これらのキーをポリシーステートメントのCondition要素として指定することで、きめ細かい権限付与ルールを定義できます。条件キーで、ポリシーのCondition_value要素で条件の値を指定します。

各条件キーには、文字列、数値、ブール値、IP アドレスといった特定のデータ型が定められています。データ型によって使用できる条件演算子が異なるため、キーのデータ型に基づいて適切な演算子を指定する必要があります。不適切な演算子を指定した場合、ポリシーステートメントは機能しません。データ型と条件演算子の対応関係については、「Condition_operator」をご参照ください。

条件キー

説明

データ型

acs:ResourceGroupId リソースグループID条件。 String

カスタム RAM ポリシーの作成方法

カスタムポリシーを作成し、RAM ユーザー、RAM ユーザーグループ、または RAM ロールに付与できます。詳細については、以下をご参照ください。