システムポリシーで要件を満たせない場合は、カスタムポリシーを作成して Alibaba Cloud DNS の最小権限のアクセス制御を実装できます。カスタムポリシーはきめ細かな権限を提供し、リソースアクセスのセキュリティ向上に役立ちます。
カスタムポリシーとは
Resource Access Management (RAM) では、カスタムポリシーはシステムポリシーに加えて作成、更新、削除できるポリシーです。カスタムポリシーのバージョンはお客様自身で管理する必要があります。
カスタムポリシーを作成した後、RAM ユーザー、ユーザーグループ、または RAM ロールにアタッチできます。これにより、RAM アイデンティティはポリシーで指定された権限を取得します。
カスタムポリシーは削除できます。ポリシーを削除する前に、参照されていないことを確認してください。ポリシーが参照されている場合は、先にポリシーへの参照を解除してください。
カスタムポリシーはバージョニングをサポートします。RAM のバージョニング機能を使用して、ポリシーのバージョンを管理できます。
操作ドキュメント
カスタムポリシーの一般的なシナリオと例
例 1:ドメイン名の権威 DNS の名前解決に関する権限の管理
RAM ユーザーに、ドメイン名の表示と編集、および権威 DNS の名前解決サービスの DNS レコード管理を行う権限を付与します。
{
"Version": "1",
"Statement": [
{
"Action": "alidns:*",
"Resource": "*",
"Effect": "Allow"
},
{
"Action": "ram:CreateServiceLinkedRole",
"Resource": "*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": [
"alidns.aliyuncs.com",
"gtm.aliyuncs.com"
]
}
}
}
]
}例 2:ドメイン名の権威 DNS の名前解決に対する読み取り専用権限の付与
RAM ユーザーに、Alibaba Cloud DNS コンソールでドメイン名と DNS レコードを表示する読み取り専用権限を付与します。ユーザーはこれらを変更できません。
{
"Version": "1",
"Statement": [
{
"Action": [
"alidns:Describe*",
"alidns:Get*",
"alidns:List*",
"alidns:Query*",
"alidns:Check*",
"alidns:Search*",
"alidns:ValidateDomainCanAdd"
],
"Resource": "*",
"Effect": "Allow"
}
]
}例 3:RAM ユーザーにドメイン名の DNS レコードを管理する権限を付与
[Action]フィールドでは、DNS レコードの追加、変更、削除など、RAM ユーザーが実行できる操作を指定します。[Resource]フィールドでは、管理できるドメイン名を指定します。これにより、許可される操作が指定されたリソースに制限されます。ポリシーを指定した RAM ユーザーにアタッチします。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"alidns:AddDomainRecord",
"alidns:DeleteDomainRecord",
"alidns:DeleteSubDomainRecords",
"alidns:UpdateDomainRecord",
"alidns:UpdateDomainRecordsTTL",
"alidns:CreateAlidnsLineRecordSet"
],
"Resource": [
"acs:alidns:*:1413397765616316:domain/your-domainname"
]
}
]
}注:権限はドメイン名単位でのみ付与できます。 RAM ユーザーが特定のサブドメイン (たとえば demo.example.com) の DNS レコードを、example.com ドメイン全体ではなく管理するようにしたい場合、demo.example.com を独立したサブドメインとして追加する必要があります。 詳細については、「サブドメイン管理」をご参照ください。 その後、上記の方法で権限を付与できます。
コンソール操作に関する注記
前述のポリシーは、DNS レコードの書き込み操作に対する権限のみを付与します。その結果、RAM ユーザーがコンソールにログインした後に「Permission Denied」メッセージを受け取ることがあります。RAM ユーザーがコンソールで表示および操作を実行する必要がある場合は、ユーザーにグローバルな読み取り専用ポリシーも付与する必要があります。これは、 DescribeDomains などのクエリ関連の API 操作が、リソースレベルの権限付与をサポートしていないためです。このポリシーでは、 Resource を * に設定する必要があります。これにより、RAM ユーザーはコンソールですべてのドメインとレコードを表示できますが、管理できるのは承認されたもののみです。
よくある質問
権限を付与しても、DNS コンソールで RAM ユーザーのアクセスが拒否される
RAM ユーザーに DNS の権限を付与しているにもかかわらず、コンソールでユーザーが権限を持たないと表示される場合は、次の手順でトラブルシューティングを行ってください:
権限付与リファレンス
カスタムポリシーを作成する前に、権限制御の要件および Alibaba Cloud DNS の承認情報を理解してください。詳細については、「承認情報」をご参照ください。