多分多少の質問ですが、Amazon Cognito AuthFlow
Amazon Cognito User Poolsでの認証方法を.NETで実行します。 私は次のように認証を開始しています:
var response1 = client.InitiateAuth(new InitiateAuthRequest()
{
AuthFlow = AuthFlowType.USER_SRP_AUTH,
AuthParameters = new Dictionary<string, string>()
{
{"USERNAME","User" },
{"SRP_A" , A }
},
ClientId = "xxxxxxxxxxxxxxxxxxxxxxxxxxx"
});
彼らのドキュメントは、本当に、本当に悪いです、と私は私がチャレンジに応答するときに渡すものを見つけるように見えることはできません。サイドノートでは
client.RespondToAuthChallenge(new RespondToAuthChallengeRequest()
{
ChallengeName = ChallengeNameType.PASSWORD_VERIFIER,
ChallengeResponses = { /*WHAT am I supposed to add here, and where can I find any documnetation on what is expected?*/ },
Session = response1.Session,
ClientId = "xxxxxxxxxxxxx"
});
、私は保護されたカスタムの.NET APIにCognitoフェデレーションIDを使用したいので、私の考えでは、トークンを使用する場所I、WEBAPI側にJWTとして渡すCognitoによって返さトークンをデコードして検証します。これはAmazon Cognitoを使用するための期待された方法ですか? (私はamazon APIゲートウェイを使用したくない、少なくとも今のところは)。
私はデフォルトのJWTミドルウェアでOWINを設定していると仮定していますか?
あなたのサイドノートは基本的に正しいです:ユーザープールはあなたに非常によく似たJWTトークンを与えますGoogleなどと呼ばれ、同じ方法でIDプールによって使用されます。 –
SRPに関しては、標準アルゴリズムです(https://en.wikipedia.org/wiki/Secure_Remote_Password_protocol)。しかし、Cognitoに対してC#でまだ動作していません。 –