確認まで行ったユーザで IntiateAuth を使ってユーザ認証を行います。
をクリックして、新しいタブを開きます。
HTTP メソッドのドロップダウンリストから [POST] を選択して、以下の URL を入力します。
https://cognito-idp.ap-northeast-1.amazonaws.com/
リクエスト部のタブ [Headers] をクリックして、以下の 2 つを入力します。
ヘッダ項目 | 値 |
---|---|
Content-Type | application/x-amz-json-1.1 |
X-Amz-Target | AWSCognitoIdentityProviderService.InitiateAuth |
リクエスト部のタブ [Body] をクリックして、入力形式を指定するドロップダウンリストから [raw] と [JSON] を選択します。
テキストボックスには、以下の JSON の < >
部分を書き換えて入力します。<app-client-id>
は 2 章で作成した Cognito アプリクライアントの ID です。Public クライアントを使用します。<mail-address>
、<password>
には先程登録したユーザ情報を入力してください。ユーザ情報が思い出せない場合は、最初に使ったタブを開き直して確認することができます。
{
"ClientId": "<app-client-id>",
"AuthFlow": "USER_PASSWORD_AUTH",
"AuthParameters":
{
"USERNAME": "<mail-address>",
"PASSWORD": "<password>"
}
}
[Send] をクリックして、API をリクエストします。
API の呼び出し結果が表示されます。この API では結果として、トークンが得られます。
得られたトークンのうち、AccessToken
、IdToken
を jwt.io のサイトでデコードして、内容を確認します。
アクセストークンの内容を確認します。InitiateAuth の呼び出し結果から AccessToken
の値をコピーします。” は含めず、” と “ に囲まれた文字列をコピーします。
https://jwt.io/ をブラウザで開いてください。
以下のような入力画面が表示されるまで、下にスクロールしてください。最初はサンプルが入力されています。
[Encoded] にコピーした AccessToken
の値を貼り付けます。[Decoded] の [PAYLOAD] にトークンの中身が表示されます。[username] は Cognito 上のユーザ名です。今回はユーザからはメールアドレスをユーザ名のように扱う前提で、ユーザ名を指定していないため、ランダムな文字列が生成されて割り当てられています。ユーザにとってユーザ名であるメールアドレスはアクセストークンに含まれていません。また、 [Encoded] にある貼り付けた文字列が 3 色で塗り分けられており、[Decoded] のどこの部分かを表しています。
InitiateAuth の呼び出し結果から IdToken
の値をコピーします。こちらも “ は含めず、” と “ に囲まれた文字列をコピーします。
https://jwt.io/ で、[Encoded] にコピーした IdToken
の値を貼り付けます。[Decoded] の [PAYLOAD] にトークンの中身が表示されます。アクセストークンと同じ内容も含まれていますが、いくつか異なっており、特にメールアドレスなどユーザの属性が含まれています。