Python 调用GetCredentialsForIdentity操作时出错(ResourceNotFoundException):Identity';ap-south-1:sadf&x27;
当我使用IdentityId和登录名调用GetCredentialsForIdentity时,我得到ResourceNotFoundExceptionPython 调用GetCredentialsForIdentity操作时出错(ResourceNotFoundException):Identity';ap-south-1:sadf&x27;,python,amazon-web-services,boto3,Python,Amazon Web Services,Boto3,当我使用IdentityId和登录名调用GetCredentialsForIdentity时,我得到ResourceNotFoundException client_identify = boto3.client('cognito-identity', region_name=POOL_REGION) logins = {} logins[ "cognito-idp." + POOL_REGION + ".amazonaws.com/" + USE
client_identify = boto3.client('cognito-identity', region_name=POOL_REGION)
logins = {}
logins[
"cognito-idp." + POOL_REGION + ".amazonaws.com/" + USER_POOL
] = id_token;
print(logins, IDENTITY_POOL_ID)
res = client_identify.get_credentials_for_identity(
IdentityId=IDENTITY_POOL_ID,
Logins=logins
)
我在这里得到的错误是:
botocore.errorfactory.ResourceNotFoundException:发生错误
(ResourceNotFoundException)调用GetCredentialsForIdentity操作时:Identity
在此处输入代码“ap-south-1:ASDFADSFASDFSDADFASDFASD”
当我尝试使用javascript时,它工作得非常好
python中有什么解决方案吗?
IDENTITY\u POOL\u ID
和IDENTITY\u ID
是两种不同的东西。基本上需要使用从IDENTITY\u POOL\u ID
获取IDENTITY\u ID
下面是我测试过的代码:
import boto3
client_identify = boto3.client('cognito-identity')
IDENTITY_POOL_ID = 'us-east-1:xxxxx-3f18-41f9-b4a6-xxxxx'
response = client_identify.get_id(
IdentityPoolId=IDENTITY_POOL_ID
)
print(response)
IDENTITY_ID = response['IdentityId']
print(IDENTITY_ID)
res = client_identify.get_credentials_for_identity(
IdentityId=IDENTITY_ID
)
print(res)
您需要根据自己的要求进行调整。您确定指定了正确的
标识池吗?
?是的。我正在使用IDENTITY\u POOL\u ID,但代码中没有IDENTITY\u POOL\u ID
。取而代之的是IDENTITY\u POOL
或POOL\u ID
?这些都是不同的?我有更新的问题,请检查。我按照这个执行。这里他们提到了“IdentityId”,但我提供的是“IDENTITY\u POOL\u ID”。坦斯克,我也这么做,但没有“AccountId”。这是我从第三方获得的数据,用于集成{“用户”:“aaaaaa”,“密码”:“BBBBBBB”,“用户池”:“CCCCCCCCC”,“应用客户端”:“dddddd”,“identityPool”:“eeeeeee”,“region”:“FFFFFF”,“basePath”:“}AccountId(string)
在get\u id
中是可选的。所以你们很多人不需要它。谢谢,你们帮我分配了。我以为我是会计mandatory@Kanna没问题。很高兴我能帮忙:-)