本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
新增具有部署後端資源許可的服務角色
Amplify 需要許可,才能使用您的前端部署後端資源。您會使用服務角色來達成此目標。服務角色是 AWS Identity and Access Management (IAM) 角色,提供 Amplify Hosting 代表您部署、建立和管理後端的許可。
當您建立新的應用程式需要 IAM 服務角色時,您可以允許 Amplify Hosting 為您自動建立服務角色,也可以選取您已建立的 IAM 角色。在本節中,您將了解如何建立具有帳戶管理許可的 Amplify 服務角色,並明確允許直接存取 Amplify 應用程式部署、建立和管理後端所需的資源。
在 IAM 主控台中建立 Amplify 服務角色
若要建立服務角色
-
開啟 IAM 主控台
,然後從左側導覽列中選擇角色,然後選擇建立角色。 -
在選取信任的實體頁面中,選擇 AWS 服務。針對使用案例,選取 Amplify - 後端部署,然後選擇下一步。
-
在 Add permissions (新增許可) 頁面上,選擇 Next (下一步)。
-
在名稱、檢視和建立頁面上,針對角色名稱輸入有意義的名稱,例如
AmplifyConsoleServiceRole-AmplifyRole
。 -
接受所有預設值,然後選擇建立角色。
-
返回 Amplify 主控台,將角色連接至您的應用程式。
-
如果您正在部署新的應用程式,請執行下列動作:
-
重新整理服務角色的清單。
-
選取您剛建立的角色。在此範例中,它應該看起來像 AmplifyConsoleServiceRole-AmplifyRole。
-
選擇下一步,然後依照步驟完成您的應用程式部署。
-
-
如果您有現有的應用程式,請執行下列動作:
-
在導覽窗格中,選擇應用程式設定,然後選擇 IAM 角色。
-
在 IAM 角色頁面的服務角色區段中,選擇編輯。
-
在服務角色頁面上,從服務角色清單中選取您剛建立的角色。
-
選擇儲存。
-
-
-
Amplify 現在具有為您的應用程式部署後端資源的許可。
編輯服務角色的信任政策,以防止混淆代理人
混淆代理人問題屬於安全性議題,其中沒有執行動作許可的實體可以強制具有更多許可的實體執行該動作。如需詳細資訊,請參閱預防跨服務混淆代理人。
目前,Amplify-Backend Deployment
服務角色的預設信任政策會強制執行 aws:SourceArn
和 aws:SourceAccount
全域內容條件索引鍵,以防止混淆代理人。不過,如果您先前在帳戶中建立 Amplify-Backend Deployment
角色,您可以更新角色的信任政策,以新增這些條件,以防止混淆代理人。
使用下列範例來限制存取您帳戶中的應用程式。將範例中的區域和應用程式 ID 取代為您自己的資訊。
"Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:amplify:
us-east-1
:123456789012
:apps/*" }, "StringEquals": { "aws:SourceAccount": "123456789012
" } }
如需使用 編輯角色信任政策的說明 AWS Management Console,請參閱《IAM 使用者指南》中的修改角色 (主控台)。