應用程式功能:IAM 角色、資源政策和巢狀應用程式 - AWS Serverless Application Repository

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

應用程式功能:IAM 角色、資源政策和巢狀應用程式

在部署應用程式之前,會先AWS Serverless Application Repository檢查應用程式的範本是否有 IAM 角色、AWS資源政策和範本指定應建立的巢狀應用程式。IAM 資源 (例如具有完整存取權的 IAM 角色) 可以修改AWS帳戶中的任何資源。因此,建議您先檢閱與應用程式關聯的許可再繼續作業,以免無意間建立提升許可的資源。為確保您已這麼做,您必須認可應用程式包含各項功能,而後 AWS Serverless Application Repository 方能代表您部署應用程式。

應用程式可能包含以下四項功能的任何一個:CAPABILITY_IAMCAPABILITY_NAMED_IAMCAPABILITY_RESOURCE_POLICYCAPABILITY_AUTO_EXPAND

下列資源需要您指定CAPABILITY_IAMCAPABILITY_NAMED_IAMAWS::IAM::GroupAWS::IAM::InstanceProfileAWS::IAM::Policy、和AWS::IAM::Role。如果應用程式包含具有自訂名稱的 IAM 資源,則您必須指定 CAPABILITY_NAMED_IAM。如需如何指定功能的範例,請參閱尋找並認可應用程式功能 (AWS CLI)

下列資源需要您指定CAPABILITY_RESOURCE_POLICYAWS::Lambda::LayerVersion權限AWS::Lambda::PermissionAWS::Events::EventBus政策AWS:: IAM: 政策AWS::ApplicationAutoScaling::ScalingPolicyAWS::S3::BucketPolicyAWS::SQS::QueuePolicy、和AWS::SNS::TopicPolicy

包含一個或多個巢狀應用程式的應用程式需要由您指定 CAPABILITY_AUTO_EXPAND。如需巢狀應用程式的詳細資訊,請參閱AWS Serverless Application Model開發人員指南中的巢狀應用程式

尋找並認可應用程式功能 (主控台)

您可以在AWS Serverless Application Repository網站AWS Serverless Application Repository上找到可用的應用程式,或透過 Lambda 主控台 (位於AWS Serverless Application Repository索引標籤下方的「建立函數」頁面) 找到可用的應用程式。

預設情況下,搜尋結果不會顯示需要認可具備功能可建立自訂 IAM 角色或資源政策的應用程式。若要搜尋含有上述功能的應用程式,您必須選取 Show apps that create custom IAM roles or resource policies (顯示建立自訂 IAM 角色或資源政策的應用程式) 核取方塊。

選取應用程式之後,您便能夠在 Permissions (許可) 標籤下檢閱該應用程式的功能。若要部署應用程式,您必須選取 I acknowledge this application creates custom IAM roles or resource polices (我認可此應用程式會建立自訂 IAM 角色或資源政策) 核取方塊。如果您不認可這些功能,您會看到此錯誤訊息:需要確認。若要部署,請核取 [設定應用程式參數] 區段中的方塊

檢視應用程式功能 (AWS CLI)

若要使用 AWS CLI 檢視應用程式的功能,您首先需要應用程式的 Amazon Resource Name (ARN)。然後,您可以執行以下命令:

aws serverlessrepo get-application \ --application-id application-arn

requiredCapabilities 回應屬性包含了您必須認可後才能部署應用程式的應用程式各項功能的清單。請注意,如果 requiredCapabilities 屬性為空,則應用程式沒有必要的功能。