Identity and Access Management

如何在不使用CDKToolkit的情况下使用CDK

我们使用CDK在客户的AWS环境中建立基础设施。然而,我们禁止在客户的AWS环境中创建IAM资源。

因此,CDKToolkit不能被部署,因为CDK v2中的CDKToolkit包含IAM资源。

有没有办法在没有CDKToolkit的情况下使用CDK,或者在不包括CDKToolkit中的IAM的堆栈中使用CDK?

最好的办法可能是为你的客户提供一个CloudFormation模板,他们可以用它来为你启动账户。下面的命令将生成一个CDK引导模板(注意:最好给工具包添加一个限定词,这样就不会与同一账户中的其他工具包发生冲突)。

cdk bootstrap --qualifier acme-corp --show-template > bootstrap-template.yaml

有4个必要的角色(部署、文件资产、图像资产和云计算执行)。CDK将通过他们的名字来查找这些角色。无论你用什么委托人来验证你的客户账户,都必须有权限来承担部署角色。

注意,默认情况下,cloudformation exec角色有过度的访问权。

但是,如果你真的想要解决这个问题,我会考虑创建一个自定义合成器。我以前从未这样做过,但我认为您可以将所有 4 个角色设置为您已经有权访问的同一主体:https ://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html#bootstrapping -自定义合成器




您好,谢谢您的提问。您可以做的是自定义使用 CDK 部署的模板。例如,请参阅引导指南:https ://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html您可以使用以下命令获取 bootstrap-template.yaml :

cdk bootstrap --show-template > bootstrap-template.yaml

然后您可以根据需要编辑 bootstrap-template.yaml 文件,并自行部署。如果您选择自己创建这些角色,则可以在 CloudFormation 模板中引用它们。



从aws cloudwatch读取日志时,只使用角色需要什么凭证?
ELI5:AWS CLI和SSO
启动AWS CloudShell时出错。"无法启动环境"