将AWS Amplify配置为使用Cognito的代理服务器



我想设置一个可以从AWS Amplify访问的服务,该服务充当AWS Cognito的代理服务。关键是,这样的服务将提供更大的灵活性,同时可以选择将Cognito换成另一个身份提供商(比如Okta(。

考虑到这一点,是否可以将AWS Amplify配置为使用与Cognito/Auth默认使用的不同的端点(即,当前硬编码为https://Cognito ipd.<region>.amazonaws.com(

如果没有,你能想出一个变通办法吗?

注意:文档中似乎没有任何明显的内容(https://docs.amplify.aws/lib/client-configuration/configuring-amplify-categories/q/platform/js/#top-水平配置(

看起来AWS鼓励在适用的情况下在Cognito前面使用代理。

https://aws.amazon.com/blogs/security/protect-public-clients-for-amazon-cognito-by-using-an-amazon-cloudfront-proxy/

如果您使用的是AWS Amplify,您可以通过重写属性AWS_cognito_endpoint来更改AWS-exports.js文件中的端点。或者,如果您在代码中配置Amplify Auth,您可以提供如下端点。

Amplify.Auth.configure({
userPoolId: '<USER-POOL-ID>',
userPoolWebClientId: '<APP-CLIENT-ID>',
endpoint: 'https://<CF-DISTRIBUTION-DOMAIN>'
});

最新更新