Contenu connexe
Similaire à Cognito User Poolsからの~ (JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo 2016 アップデート追っかけ会) (20)
Plus de Mitsuhiro Yamashita (20)
Cognito User Poolsからの~ (JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo 2016 アップデート追っかけ会)
- 11. Cognito User Pools デモを見てみます
AWS.config.region = 'us-east-1';
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'us-east-1:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
});
AWSCognito.config.region = 'us-east-1';
AWSCognito.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'us-east-1:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
});
var poolData = {
UserPoolId : 'us-east-1_xxxxxxxxxxxxx,
ClientId: 'xxxxxxxxxxxxxxxxxxxx'
};
var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData);
サインアップ、アクティベーション、ログインをやってみます。
上記は共通のコードです。
IdentityのIDとUserPoolのIDとUserPoolで設定したAppのクライアントIDを設定
します。
※amazon-cognito-identity.jsを使用します。(詳しくはブログで)
- 12. Cognito User Pools デモを見てみます
var dataEmail = {
Name : 'email',
Value : $('#email').val()
};
var attributeEmail = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserAttribute(dataEmail);
var attributeList = [];
attributeList.push(attributeEmail);
userPool.signUp($('#email').val(), $('#password').val(), attributeList, null, function(err, result){
if (err) {
//エラー処理
return;
}
//成功処理(メッセージなど)
});
メールアドレスとパスワードを入力して、
サインアップを行います。
- 13. Cognito User Pools デモを見てみます
サインアップをすると、User Poolsで設定していたとおりに、
verification codeがメールで届きます。
この時点でCognitoのUsersにユーザーが登録されますが、
まだ「Unconfirmed」です。
- 14. Cognito User Pools デモを見てみます
var userData = {
Username : $('#actemail').val(),
Pool : userPool
};
var cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);
cognitoUser.confirmRegistration($('#actcode').val(), true, function(err, result) {
if (err) {
//エラー処理
return;
}
//成功処理(メッセージなど)
});
verification codeを入力して認証を完了します。
- 16. Cognito User Pools デモを見てみます
var authenticationData = {
Username : $('#loginemail').val(),
Password : $('#loginpassword').val()
};
var authenticationDetails = new AWSCognito.CognitoIdentityServiceProvider.AuthenticationDetails(authenticationData);
var userData = {
Username : $('#loginemail').val(),
Pool : userPool
};
var cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);
cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function (result) {
//成功処理(デモでは画面にトークンを書き出してみてます)
$('#token').html('access token : ' + result.getAccessToken().getJwtToken());
},
onFailure: function(err) {
//エラー処理;
},
});
メールアドレスとパスワードでログインします。