使用 AWS Comprehend 的问题 iOS
Issue using AWS Comprehend iOS
我很确定我正确地设置了我的 IAM 角色(我从字面上将 ComprehendFullAccess 策略附加到该角色)并且 Cognito 池也设置得当(我知道这一点是因为我也在使用 Rekognition 并且它有效使用我创建的 IAM 角色和 Cognito ID 池),但每次我尝试向 AWS Comprehend 发送请求时,我都会收到错误
Error Domain=com.amazonaws.AWSServiceErrorDomain Code=6 "(null)" UserInfo={__type=AccessDeniedException, Message=User: arn:aws:sts::<my sts>:assumed-role/Cognito_<my id pool name>Unauth_Role/CognitoIdentityCredentials is not authorized to perform: comprehend:DetectEntities}
知道在这种情况下我能做什么吗?我尝试创建一个新的 Cognito 池并创建一个自定义 IAM 角色,它实际上只允许 comprehend:DetectEntities
但它仍然不起作用。
目前将 Cognito 增强型流程与 Comprehend 服务结合使用存在限制。请使用以下构造函数来指定身份池中角色的 ARN。这使用获取凭据的基本流程并与 Cognito 一起使用。
AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc]
initWithRegionType:AWSRegionUSEast1
identityPoolId:@"identityPoolId"
unauthRoleArn:@"unauthRoleArn"
authRoleArn:@"authRoleArn"
identityProviderManager:nil]; // identityProviderManager is required for federating an identity provider with Cognito
我很确定我正确地设置了我的 IAM 角色(我从字面上将 ComprehendFullAccess 策略附加到该角色)并且 Cognito 池也设置得当(我知道这一点是因为我也在使用 Rekognition 并且它有效使用我创建的 IAM 角色和 Cognito ID 池),但每次我尝试向 AWS Comprehend 发送请求时,我都会收到错误
Error Domain=com.amazonaws.AWSServiceErrorDomain Code=6 "(null)" UserInfo={__type=AccessDeniedException, Message=User: arn:aws:sts::<my sts>:assumed-role/Cognito_<my id pool name>Unauth_Role/CognitoIdentityCredentials is not authorized to perform: comprehend:DetectEntities}
知道在这种情况下我能做什么吗?我尝试创建一个新的 Cognito 池并创建一个自定义 IAM 角色,它实际上只允许 comprehend:DetectEntities
但它仍然不起作用。
目前将 Cognito 增强型流程与 Comprehend 服务结合使用存在限制。请使用以下构造函数来指定身份池中角色的 ARN。这使用获取凭据的基本流程并与 Cognito 一起使用。
AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc]
initWithRegionType:AWSRegionUSEast1
identityPoolId:@"identityPoolId"
unauthRoleArn:@"unauthRoleArn"
authRoleArn:@"authRoleArn"
identityProviderManager:nil]; // identityProviderManager is required for federating an identity provider with Cognito