本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
ACME 憑證自動化的 IAM
ACME 憑證自動化使用 IAM 角色來授權憑證發行和撤銷。本節說明 ACME 的許可模型。
PKI 管理員許可
建立和管理 ACME 資源的 PKI 管理員需要下列許可:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "acm:CreateAcmeEndpoint", "acm:DescribeAcmeEndpoint", "acm:ListAcmeEndpoints", "acm:UpdateAcmeEndpoint", "acm:DeleteAcmeEndpoint", "acm:CreateAcmeExternalAccountBinding", "acm:DescribeAcmeExternalAccountBinding", "acm:ListAcmeExternalAccountBindings", "acm:GetAcmeExternalAccountBindingCredentials", "acm:RevokeAcmeExternalAccountBinding", "acm:DeleteAcmeExternalAccountBinding", "acm:CreateAcmeDomainValidation", "acm:DescribeAcmeDomainValidation", "acm:ListAcmeDomainValidations", "acm:UpdateAcmeDomainValidation", "acm:DeleteAcmeDomainValidation" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::account-id:role/AcmeIssuanceRole", "Condition": { "StringEquals": { "iam:PassedToService": "acm-acme.amazonaws.com" } } } ] }
EAB 角色需求
每個外部帳戶繫結都與 IAM 角色相關聯。ACM 使用此角色為使用繫結憑證進行身分驗證的 ACME 用戶端授權憑證發行和撤銷。
信任政策
角色必須信任 ACME 服務委託人,授予 sts:AssumeRole、 sts:TagSession和 sts:SetSourceIdentity。下列信任政策也會在 上使用條件sts:SourceIdentity,僅允許 ACM 為 ACME 建立的工作階段 (以 開頭的來源身分acm-acme-):
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "acm-acme.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession", "sts:SetSourceIdentity" ], "Condition": { "StringLikeIfExists": { "sts:SourceIdentity": "acm-acme-*" } } } ] }
許可政策
角色需要您想要允許之憑證操作的許可。適用於直接 API 呼叫的相同 ACM 動作和條件索引鍵會套用在此:
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "acm:RequestCertificate", "acm:RevokeCertificate" ], "Resource": "*" }] }
您可以使用 支援的相同條件金鑰來限制發行acm:RequestCertificate,例如 acm:DomainNames或 acm:KeyAlgorithm。如需詳細資訊,請參閱搭配 ACM 使用條件索引鍵。
角色工作階段名稱和來源身分
當 ACM 擔任角色時,它會設定在 CloudTrail 日誌中顯示的角色工作階段名稱和來源身分,您可以使用 sts:RoleSessionName和 sts:SourceIdentity條件索引鍵來參考:
-
在憑證發行和撤銷時 – 角色工作階段名稱為
acme-request-,而來源身分為request-idacm-acme-。acme-account-id -
在外部帳戶繫結建立時驗證角色 – 角色工作階段名稱為 ,
acme-verification而來源身分為acm-acme-verification。
這兩個來源身分都以 開頭acm-acme-,因此信任政策中的 sts:SourceIdentity條件允許兩者。ACM 也會在擔任角色工作階段上連接工作階段標籤,包括 acme-endpoint-arn、 acme-account-url和 acme-operation。
SCP 相容性
由於 ACME 服務使用擔任的角色進行標準 ACM API 呼叫, AWS 因此組織服務控制政策 (SCPs) 會在憑證發行時強制執行。如果 SCP 拒絕acm:RequestCertificate帳戶,ACME 憑證發行也會失敗。這可為 ACME 發行的憑證提供與直接透過 ACM API 發行的憑證相同的控管控制。