Amazon web services 如何在没有托管UI的情况下使用aws amplify API使用联邦身份验证?

Amazon web services 如何在没有托管UI的情况下使用aws amplify API使用联邦身份验证?,amazon-web-services,amazon-cognito,aws-amplify,Amazon Web Services,Amazon Cognito,Aws Amplify,AWS Cognito提供两个服务:用户池和身份池。到目前为止,两者都是相似但不同的概念 我希望使用用户池的功能联合 我不想在托管UI中使用此功能 我不想在身份池中使用此功能 我想在一个反应性的本地应用程序中使用facebook用户池或google用户池的联合登录。例如,仅使用AWS sdk,例如,来自amplify的auth sdk 但是,我发现不可能通过API(非托管UI)使用用户池的联合登录 与Auth.signIn同义,但与使用react native的联合facebook同义,例如与e

AWS Cognito提供两个服务:用户池和身份池。到目前为止,两者都是相似但不同的概念

希望使用用户池的功能联合

我不想在托管UI中使用此功能

我不想在身份池中使用此功能

我想在一个反应性的本地应用程序中使用facebook用户池或google用户池的联合登录。例如,仅使用AWS sdk,例如,来自amplify的auth sdk

但是,我发现不可能通过API(非托管UI)使用用户池的联合登录

Auth.signIn
同义,但与使用react native的联合facebook同义,例如与expo

通过expo,我可以通过

const { type, token, expires } = await Expo.Facebook.logInWithReadPermissionsAsync(aws_exports.aws_facebook_id, {
  permissions: ['public_profile'],
});

如何在没有托管UI的情况下使用aws amplify API使用联合身份验证?

amplify不使用用户池API通过第三方提供商登录,为第三方提供商提供的API仅用于标识池。目前,AWS Amplify SDK团队也提出了同样的功能要求


一种解决方法是直接使用端点,并发出合适的HTTP请求以满足您的需求

这里有一篇文章展示了如何使用谷歌和Facebook对用户池进行身份验证。这里重复的内容太多了,请查看链接


希望这有帮助。

这是一个错误的答案。Auth.Federated SignIn用于标识池。根据此处的链接,这些方法似乎确实会在流程完成后在Cognito用户池中创建用户。@ArkaMukherjee
Auth.Federated SignIn
通过托管UI重定向第三方批准来工作。让它可靠地工作还有其他问题(例如),但直接调用该方法确实会导致在身份池之外的用户池中创建用户。请在此处链接提到的功能请求。谢谢