0
私は、ユーザーを登録し、確認用のリンクで確認している2

サインイン/ AWS Cognitoでユーザーを認証

asp.netコアで、ユーザーのサーバー側で署名しようとしていますが、今、私は署名のに苦労しています

そのユーザーを自分のアプリケーションに追加します。それは残念ですが、C#のドキュメントは非常に貧弱です!

ユーザープール設定:

アプリケーションクライアント:サーバーベースの認証(ADMIN_NO_SRP_AUTH)のためにサインインAPIを有効にする -

を確認ここでは、コードです:

public async Task<bool> SignInUserAsync(CognitoUser user) 
    { 
     var provider = new AmazonCognitoIdentityProviderClient(new AnonymousAWSCredentials(), 
      RegionEndpoint.GetBySystemName("eu-west-2")); 

     try 
     { 
      var authReq = new AdminInitiateAuthRequest 
      { 
       AuthFlow = AuthFlowType.ADMIN_NO_SRP_AUTH, 
       UserPoolId = _poolId, 
       ClientId = _clientId 
      }; 
      authReq.AuthParameters.Add("USERNAME", user.Email); 
      authReq.AuthParameters.Add("PASSWORD", user.Password); 

      AdminInitiateAuthResponse authResp = await provider.AdminInitiateAuthAsync(authReq); 

      return true; 
     } 
     catch 
     { 
      return false; 
     } 


    } 

エラーそれは返信はMissing Authentication Tokenですが、私はトークンを設定する必要があるか、私に与えられているのか分かりません。

はそれが

AWS > User Pools > App Intergration > App Client Settingsの下で私のAmazonCognitoIdentityProviderClient設定や、おそらくアプリケーションのクライアントの設定で何かですか?

答えて

0

AdminInitiateAuth APIは、開発者のIAM資格情報にアクセスできるバックエンドから呼び出されることを前提としています。 AnonymousAWSCredentialsでこれを呼び出そうとしているので、Missing Authentication Tokenエラーが発生しています。

Cognito User PoolsにはまだC#のネイティブサポートがありません。ネイティブAPI呼び出しの代わりにhosted auth pagesを使用して、C#アプリにCognitoユーザープールを統合する必要があります。

関連する問題