本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定 Change Manager 的角色和許可
在預設情況下,Change Manager 沒有在您的資源上執行動作的許可。您必須使用 AWS Identity and Access Management (IAM) 服務角色或假定角色來授予存取權。此角色可讓 Change Manager 代表您安全地執行在已核准變更請求中指定的 Runbook 工作流程。角色會將 AWS Security Token Service (AWS STS) AssumeRole信任授與Change Manager。
藉由向角色提供這些權限以代表組織中的使用者執行操作,使用者本身無需被授予該許可陣列。許可允許的動作僅限於已核准的操作。
當您的帳户或組織中的使用者建立變更請求時,他們可以選取此擔任角色來執行變更操作。
您可以為 Change Manager 建立新的擔任角色,或更新具備所需許可的現有角色。
如果您需要為 Change Manager 建立服務角色,請完成以下任務。
任務
任務 1:建立 Change Manager 的擔任角色策略
使用以下程序建立您將連接至 Change Manager 擔任角色的政策。
若要建立 Change Manager 的擔任角色策略
在開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇 Policies (政策),然後選擇 Create Policy (建立政策)。
-
在 [建立原則] 頁面上,選擇JSON索引標籤,並以下列項目取代預設內容,您將依照下列步驟為自己的Change Manager作業進行修改。
注意
如果您要建立原則以搭配單一使用 AWS 帳戶,而不是具有多個帳戶的組織 AWS 區域,則可以省略第一個陳述式區塊。在此使用 Change Manager 的單一帳户情況中,無須使用
iam:PassRole
許可。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::
delegated-admin-account-id
:role/AWS-SystemsManager-job-function
AdministrationRole", "Condition": { "StringEquals": { "iam:PassedToService": "ssm.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:DescribeDocument", "ssm:GetDocument", "ssm:StartChangeRequestExecution" ], "Resource": [ "arn:aws:ssm:region
:account-id
:automation-definition/template-name
:$DEFAULT", "arn:aws:ssm:region
::document/template-name
" ] }, { "Effect": "Allow", "Action": [ "ssm:ListOpsItemEvents", "ssm:GetOpsItem", "ssm:ListDocuments", "ssm:DescribeOpsItems" ], "Resource": "*" } ] } -
對於
iam:PassRole
動作,請更新Resource
值以包含您要授與啟動 runbook 工作流程權限的組織定義的所有工作功能的值。ARNs -
更換
region
,account-id
,template-name
,delegated-admin-account-id
和job-function
具有Change Manager操作值的佔位符。 -
對於第二個
Resource
陳述式,修改列表以包括要授予許可的所有變更範本。或者,指定"Resource": "*"
以向組織中的所有變更範本授與許可。 -
選擇下一步:標籤。
-
(選用) 新增一個或多個標籤鍵值組來組織、追蹤或控制對此政策的存取。
-
選擇下一步:檢閱。
-
在 Review policy (檢閱政策) 頁面,在 Name (名稱) 方塊中輸入名稱 (如
MyChangeManagerAssumeRole
),接著輸入選用描述。 -
選擇 Create policy (建立政策),並繼續 任務 2:建立 Change Manager 的擔任角色。
任務 2:建立 Change Manager 的擔任角色
使用以下程序建立 Change Manager 的 Change Manager 擔任角色 (一種服務角色類型)。
若要建立 Change Manager 的擔任角色
在開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇 Roles (角色),然後選擇 Create role (建立角色)。
-
對於 Select trusted entity (選擇信任的實體),請執行以下選項:
-
針對 Trusted entity type (信任的實體類型),請選擇 AWS service ( 服務)
-
對於其他用例 AWS 服務,請選擇 Systems Manager
-
選擇 Systems Manager,如下圖所示。
-
-
選擇 Next (下一步)。
-
在 Attached permissions policy (已連接許可政策) 頁面,搜尋您在 任務 1:建立 Change Manager 的擔任角色策略 中建立的擔任角色政策,如
MyChangeManagerAssumeRole
。 -
選取擔任角色政策名稱旁的核取方塊,然後選擇 Next: Tags (下一步:標籤)。
-
在 Role name (角色名稱) 中,輸入新執行個體設定檔的名稱,如
MyChangeManagerAssumeRole
。 -
(選用) 對於 Description (說明),更新此執行個體角色的說明。
-
(選用) 新增一個或多個標籤鍵值組來組織、追蹤或控制對此角色的存取。
-
選擇下一步:檢閱。
-
(選用) 對於 Tags (標籤),新增一個或多個標籤鍵值組來整理、追蹤或控制存取此角色的存取權,然後選擇 Create role (建立角色)。系統會讓您回到 Roles (角色) 頁面。
-
選擇 Create role (建立角色)。系統會讓您回到 Roles (角色) 頁面。
-
在 Roles (角色) 頁面,選擇您剛建立的角色,以開啟 Summary (摘要) 頁面。
任務 3:將 iam:PassRole
策略連接至其他角色
請遵循下列程序將iam:PassRole
原則附加至IAM執行個體設定檔或IAM服務角色。(Systems Manager 服務會使用IAM執行個體設定檔與EC2執行個體通訊。 對於混合式和多雲端環境中的非EC2受管節點,則會改用IAM服務角色。)
連接 iam:PassRole
政策後,Change Manager 服務可以在執行 Runbook 工作流程時將擔任角色許可傳送至其他服務或 Systems Manager 功能。
將iam:PassRole
策略附加到IAM執行個體設定檔或服務角色
在開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇角色。
-
搜尋您建立的 Change Manager 擔任角色 (例如
MyChangeManagerAssumeRole
),並選擇其名稱。 -
在擔任角色的 Summary (摘要) 頁面,選擇 Permissions (許可) 標籤。
-
選擇 Add permissions, Create inline policy (新增許可,建立內嵌政策)。
-
在 Create policy (建立政策) 頁面,選擇 Visual editor (視覺化編輯器) 標籤。
-
請選擇 [服務],然後選擇IAM。
-
在篩選動作文字方塊中,輸入
PassRole
,然後選擇選PassRole項。 -
展開 Resources (資源)。確認已選取 [特定],然後選擇 [新增] ARN。
-
在 [指ARN定角色] 欄位中,輸入您要傳遞假設角色權限ARN的IAM執行個體設定檔角色或IAM服務角色。系統會填入 Account (帳戶) 和 Role name with path (角色名稱與路徑) 欄位。
-
選擇 Add (新增)。
-
選擇 Review policy (檢閱政策)。
-
在 Name (名稱) 中,輸入名稱來識別政策,然後選擇 Create policy (建立政策)。
工作 4:將內嵌原則新增至假設角色以呼叫其他角色 AWS 服務
當變更請求使用假定角色呼叫其他 AWS 服務 角色時,Change Manager假設角色必須具有叫用這些服務的權限來配置。此需求適用於可能在變更請求中使用的所有 AWS Automation Runbook (AWS-* 執行手冊),例如、和 Runbook。AWS-ConfigureS3BucketLogging
AWS-CreateDynamoDBBackup
AWS-RestartEC2Instance
此需求也適用於您建立的任何自訂 Runbook,這些 Runbook 會使用呼叫其他 AWS 服務 服務的動作來叫用其他服務。例如,如果您使用 aws:executeAwsApi
、aws:CreateStack
或 aws:copyImage
等動作,則您必須為服務角色設定可叫用這些服務的許可。您可以將IAM內嵌原則新增至角色,以啟用對其他 AWS 服務 人的權限。
若要將內嵌原則新增至假設角色以呼叫其他 AWS 服務 (IAM主控台)
登入 AWS Management Console 並開啟IAM主控台,位於https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇角色。
-
在清單中,請選擇您要更新的擔任角色名稱 (如
MyChangeManagerAssumeRole
)。 -
選擇許可索引標籤標籤。
-
選擇 Add permissions, Create inline policy (新增許可,建立內嵌政策)。
-
選擇標JSON籤。
-
輸入 AWS 服務 您要呼叫的JSON政策文件。以下是兩個JSON政策文件範例。
Amazon S3
PutObject
和GetObject
範例{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }
Amazon EC2
CreateSnapshot
和DescribeSnapShots
示例{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"*" }, { "Effect":"Allow", "Action":"ec2:DescribeSnapshots", "Resource":"*" } ] }
如需有關IAM策略語言的詳細資訊,請參閱IAM使用者指南中的IAMJSON政策參考資料。
-
完成時,請選擇 Review policy (檢閱政策)。Policy Validator (政策檢查工具) 會回報任何語法錯誤。
-
在 Name (名稱) 中,輸入名稱來識別您正在建立的政策。檢閱政策 Summary (摘要) 來查看您的政策所授予的許可。然後選擇 Create policy (建立政策) 來儲存您的工作。
-
在您建立內嵌政策後,它會自動嵌入您的角色中。
任務 5:設定使用者存取至 Change Manager
如果使用者、群組或角色受獲指派管理員許可,則您可以存取 Change Manager。如果您沒有管理員許可,則管理員必須指派 AmazonSSMFullAccess
受管政策或提供相當許可的政策給使用者、群組或角色。
使用以下程序將使用者設定為使用 Change Manager。您選擇的使用者會擁有設定和執行 Change Manager 的許可。
視您在組織中使用的身分應用程式而定, 您可以選取三個可用於設定使用者存取權中的任何一個選項。設定使用者存取權時,指派或新增下列項目:
-
指派
AmazonSSMFullAccess
政策或相當的政策,以授予存取 Systems Manager 的許可。 -
指派
iam:PassRole
政策。 -
ARN針對您在結尾複製的Change Manager假設角色新增任務 2:建立 Change Manager 的擔任角色。
若要提供存取權,請新增權限至您的使用者、群組或角色:
-
使用者和群組位於 AWS IAM Identity Center:
建立權限合集。請按照 AWS IAM Identity Center 使用者指南 中的 建立權限合集 說明進行操作。
-
IAM透過身分識別提供者管理的使用者:
建立聯合身分的角色。請遵循《使用指南》中的〈為第三方身分識別提供IAM者 (同盟) 建立角色〉中的指示進行。
-
IAM使用者:
-
建立您的使用者可擔任的角色。請按照《用戶指南》中的「為IAM用戶創建角色」中的IAM說明進行操作。
-
(不建議) 將政策直接附加至使用者,或將使用者新增至使用者群組。請遵循《使用指南》中的「向使用者 (主控台) 新增權限」IAM 中的指示進行。
-
您已完成設定 Change Manager 所需的角色。您現在可以在Change Manager作業ARN中使用Change Manager假設角色。