gpt4 book ai didi

ios - 使用 Cognito 开发人员身份验证的 AWS 移动分析

转载 作者:行者123 更新时间:2023-11-29 12:09:51 24 4
gpt4 key购买 nike

如果...,我应该如何配置 defaultServiceConfiguration

  • 我正在使用自定义身份提供商通过 Cognito 对注册用户进行身份验证。 (在用户使用用户名/密码注册到我们的服务之前,我不关心它是谁)
  • 我想使用 Mobile Analytics 在应用程序中随时跟踪事件。 (即使对于未注册的用户)

目前认证的代码看起来像这样并且延迟执行,只有在使用为注册用户保留的功能时才执行:

CustomIdentityProvider *customIdentityProvider = [[CustomIdentityProvider alloc] initWithIdProvider:idProvider
accountId:_accountId
identityPoolId:_identityPoolId
idToken:idToken];
customIdentityProvider.logins = @{idProvider.name:idToken};

AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc] initWithRegionType:AWSRegionUSEast1
identityProvider:customIdentityProvider
unauthRoleArn:nil
authRoleArn:nil];
AWSServiceConfiguration *configuration = [AWSServiceConfiguration configurationWithRegion:AWSRegionUSEast1
credentialsProvider:credentialsProvider];

[AWSServiceManager defaultServiceManager].defaultServiceConfiguration = configuration;

AWSTask * getIdentityIdTask = [credentialsProvider getIdentityId];

为了在应用程序中随时使用 Mobile Analytics,我是否必须在启动时设置 defaultServiceConfiguration?但在那种情况下,我还没有登录信息。我应该如何在没有登录的情况下对用户进行身份验证?

谢谢。

最佳答案

Cognito 具有经过身份验证和未经过身份验证的身份的概念,经过身份验证的是您提供了一些登录信息,而未经过身份验证的情况是您没有。这两类用户的访问权限由您为该池设置的角色定义。

听起来您希望能够在任何一种情况下使用 Mobile Analytics,这仅意味着您需要确保您对池的两个角色都允许访问。默认的 Cognito 策略授予 Mobile Analytics Put Events 权限 - 如果您修改了生成的角色,可能值得确认这些角色是否存在。

考虑到这一点,您不一定需要登录才能为任何用户获取 Mobile Analytics 访问权限。对于您授予经过身份验证的身份的任何额外权利,如果需要,您可以稍后在代码中更新登录信息。

这是否回答了您的问题?

关于ios - 使用 Cognito 开发人员身份验证的 AWS 移动分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33795538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com