1

私は認証バックエンドとしてAmazon Cognitoを使用しているWebサービスと対話するPythonスクリプトを開発しており、ログインに問題がありますBoto3 - アクセスキーを使用しないAmazon Cognitoでの認証

私の主な問題は、boto3はAWSのアクセスキーと秘密鍵の両方を必要としますが(「NoCredentialsError」を取得することはありません)、このスクリプトは複数の信頼できないコンピュータに存在するため、明らかなセキュリティ上の理由から、これらのキーを埋め込みます。

これらの信頼されていないコンピュータがあるにアクセスできる必要がありますことを情報:Webサービス

  • CognitoアイデンティティプールID
  • CognitoユーザープールID
  • Cognitoクライアントにログインするための

    • ユーザー名とパスワードをID

    これらのクライアントの情報とともに、正しくaut Cognitoと相談しますか?もしそうなら、どうですか?

  • 答えて

    0

    はい。 get_credentials_for_identity()に電話してください。資格情報は必要ありません。

    "id"がCognitoアイデンティティプールIDである
    import boto3 
    cognito = boto3.client('cognito-identity') 
    response = cognito.get_credentials_for_identity(IdentityId="id") 
    

    を次のようにこれを使用してください。 responseは、一時アクセスキー、秘密アクセスキー、セッショントークン、有効期限を含むdictを返す必要があります。

    +1

    これを追加するだけです。呼び出ししようとしているユーザープールの操作は認証されていないため、資格情報を必要としません。ただし、生成されたクライアントによっては、資格情報オブジェクトにプレースホルダを設定する必要があるという点で特殊性があります。このためには、認証されていないID資格情報を使用することは明らかです。 –

    関連する問題