使用CloudFormation或SAM部署身份提供程序

时间:2017-06-08 15:18:19

标签: amazon-web-services amazon-iam amazon-cloudformation

我有一个CodeStar项目,使用控制台我已经为OpenId Connect创建了一个身份提供者和一个身份池。这有效,我可以验证我的所有资源。我会把这个手动过程变成更自动化的东西。前两个需要的是

  • 创建身份提供商
  • 为该提供商创建一个标识池。

理想的解决方案是,在代码星项目中向template.yml添加一些指令,因此每次修改模板时,都会相应地修改身份提供者。 我试着查看SAM文档,似乎没有为创建身份提供程序提供有用的东西。 我已经看过CloudFormation Designer了,似乎没有什么能满足这种需求。这怎么可能?

如何自动化并将此信息置于源代码管理之下?

3 个答案:

答案 0 :(得分:2)

CloudFormation不支持OpenID或SAML IdP。但是,所有AWS SKD都可以。我建议查看lambda-backed custom resources的CloudFormation。

然后,自定义资源lambda函数可以拥有自己的OpenID提供程序创建实现。请参阅AWS文档,了解PythonJava SKD电话。

答案 1 :(得分:0)

我发现一个project可以在Lambda函数中使用python进行设置。 我还没有尝试过(我试图弄清楚的时候就在这里结束了)

相关代码(设置Boto IAM客户端后)

iam.create_saml_provider(SAMLMetadataDocument=doc,Name=name)

(当然)要比这更多,但这全在github项目中。

答案 2 :(得分:0)

CloudFormation 现在支持 OpenID Connect 和 SAML 身份提供商:

AWS::IAM::SAMLProvider 资源类型用于 SAML 提供程序,而 AWS::IAM::OIDCProvider 用于 OpenID Connect 提供程序。