AWS Cognito VS AWS 会话令牌

AWS CognitoID VS AWS Session Token

我对 AWS 会话令牌和 AWS CognitoID 之间的区别有点困惑,它们是一样的吗?因为通过这段代码

AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc]
                                                      initWithRegionType:AWSRegionUSEast1
                                                      identityPoolId:@"my-identity-pool"];

AWSServiceConfiguration *configuration = [[AWSServiceConfiguration alloc] initWithRegion:AWSRegionUSUnknown credentialsProvider:credentialsProvider];

[AWSServiceManager defaultServiceManager].defaultServiceConfiguration = configuration;

[[credentialsProvider getIdentityId] continueWithBlock:^id(AWSTask *task) {

    if (task.error) {
        NSLog(@"Error: %@", task.error);
    }
    else {
        // the task result will contain the identity id
        NSString *cognitoId = task.result;
       // -------------------Outputs cognito Id------------------------
        NSLog(@"%@,", task.result);

    }
    return nil;
}];

task.result 返回一个 AWS CognitoID,但是 AWS 会话令牌呢?如何从我的 ios 中获取它?

Amazon Cognito IdentityId 与 AWS 临时凭证不同。 AWS 临时凭证由 accessKeysecretKeysessionKey 组成。 AWSCognitoCredentialsProvider 具有这些名称的属性。有关详细信息,请参阅 API doc

一般来说,如果您在 iOS 的 AWS Mobile SDK 中使用任何 AWS 服务客户端,则无需手动检索 AWS 临时凭证。 SDK 在需要时自动检索它们。