如何通过 CLI 在 amazon cognito 中设置 Twitter 应用消费者凭证

How to set twitter app consumer credentials in amazon cognito via CLI

从 CLI 中尝试这个

aws cognito-identity update-identity-pool \
--identity-pool-id MyIdentityPoolId \
--identity-pool-name MyIdentityPoolName \
--allow-unauthenticated-identities \
--supported-login-providers graph.facebook.com=MyFacebookAppId,api.twitter.com=MyTwitterConsumerKey;MyTwitterConsumerSecret \
--region $MyRegion

CLI 响应说:

{
    "SupportedLoginProviders": {
        "api.twitter.com": "MyTwitterConsumerKey",
        "graph.facebook.com": "MyFacebookAppId"
    }, 
    "AllowUnauthenticatedIdentities": true, 
    "IdentityPoolName": "MyIdentityPoolName", 
    "IdentityPoolId": "MyIdentityPoolId"
}
MyTwitterConsumerSecret: command not found

与配置 facebook(只需要一个凭据(FacebookAppId))不同,配置 twitter 需要 2 个凭据(ConsumerKeyConsumerSecret).

如果我用分号分隔 2 个凭据,看起来只有第一部分设置在 amazon cognito 的 Twitter 配置中。 附上截图.

用于配置 twitter 的 ConsumerKey 和 ConsumerSecret 的传递格式是什么?


我参考了这些 AWS 文档:

好的。多么愚蠢。只需要在双引号内限定 --supported-login-providers 的凭据范围。

--supported-login-providers graph.facebook.com="MyFacebookAppId",api.twitter.com="MyTwitterConsumerKey;MyTwitterConsumerSecret" 

然后就成功了。

{
    "SupportedLoginProviders": {
        "api.twitter.com": "MyTwitterConsumerKey;MyTwitterConsumerSecret",
        "graph.facebook.com": "MyFacebookAppId"
    }, 
    "AllowUnauthenticatedIdentities": true, 
    "IdentityPoolName": "MyIdentityPoolName", 
    "IdentityPoolId": "MyIdentityPoolId"
}

附上截图。