繁体   English   中英

使用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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM