【发布时间】:2020-04-25 16:52:49
【问题描述】:
我正在尝试借助 https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html 的文档创建一个 Cognito 身份提供程序。这是一个 sn-p 示例,其中 FederationMetadata.xml 与 CF 模板定义位于同一文件夹中。
AWSTemplateFormatVersion: 2010-09-09
Description: Identity Provider
Resources:
CognitoUserPoolAIdProvider:
Type: "AWS::Cognito::UserPoolIdentityProvider"
Properties:
AttributeMapping:
email: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
IdpIdentifiers: []
ProviderDetails:
IDPSignout: 'false'
MetadataFile: './FederationMetadata.xml'
SLORedirectBindingURI: https://<IP of ADFS>/adfs/ls/
SSORedirectBindingURI: https://<IP of ADFS>/adfs/ls/
ProviderName: MyIdProvider
ProviderType: SAML
UserPoolId: us_abcdef123
在尝试运行时,我收到错误
Invalid XML (Service: AWSCognitoIdentityProviderService; Status Code: 400; Error Code: InvalidParameterException; Request ID: c047641b-7c69-4944-b4e4-e110cf8c2605)
我看到运行时没有提供文件内容:
{
"ProviderName": "MyIdProvider",
"UserPoolId": "us_abcdef123",
"AttributeMapping": {
"email": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
},
"ProviderDetails": {
"MetadataFile": "./FederationMetadata.xml",
"SSORedirectBindingURI": "https://<IP>/adfs/ls/",
"IDPSignout": "false",
"SLORedirectBindingURI": "https://<IP>/adfs/ls/"
},
"ProviderType": "SAML",
"IdpIdentifiers": []
}
问题:我应该如何引用 CF 模板中的 FederationMetadata.xml 文件?此外,粘贴 XML 文件的内容可以正常工作,但我想将元数据内容完全外部化到一个文件中。
【问题讨论】:
标签: json amazon-web-services amazon-cloudformation amazon-cognito