Hey, do you?
And welcome back.
Now in today's video, we will be discussing about Amazon Cognita.
So at the high limit overview, Amazon Cognitive put away authentication, authorization and user management
service for your web and mobile applications.
So let's understand this with a simple use case.
So the use case states that Alice is a mobile developer in a startup organization, and that startup
organization have begin with their mobile wallet system and there are some specific requirements as
follows.
So the first requirement is users should be able to sign up with new credentials.
So a signup functionality should be there.
Second is user should also be able to sign into the application using their social media platforms like
Facebook, Twitter, Google, etc..
Third is there should be a post signup process, which is basically a one time password for verification.
So not only because many website after a sign up is done, a verification is normally done on that email
address, so yet a verification is also required.
Then multi-factor authentication should also be present, and you also need to have an account recovery
feature for that application.
So now if you will see this functionality that we were discussing, it is not just limited to a startup
organization where Alice is working, but almost all of the organization, they will need this kind
of functionality.
So let's say that there are 100 organization, will hundred organization go ahead and develop all of
these functionality from absolute scratch?
And if they do, then it is mostly not the best way to utilize their time.
So basically not only Alice needs to work on the web application code for its mobile wallet, but Alice
will also have to build a complete authentication and authorization system here.
And not only Alice, but developers across all of the organizations will have to work on this similar
feature.
So instead of developing the entire code from absolute scratch, what Alice can do is Alice can make
use of the cognitive service, which basically provides the and then authentication and authorization
as well as the user management service for their web and mobile applications.
So let's do one thing.
Let's go ahead and look into it in a practical way.
So we didn't cycognito console.
I already have a user pool that is created for today's demo.
Now this is a simple user that is created and if you'll look at it, there are currently no users that
are available.
So basically what Golden Eagle allows you to do, let me quickly show you here.
So you basically have a hosted UI.
So as we discussed, Incognito basically can take care of authentication, authorization and user management
service.
So plenty of coordinators configure.
This is how the UI would really look like.
So this is where doing authentication authorization related steps takes place.
So currently let me go ahead and click on signup.
So as soon as I click on signup, that is basically asking me for username, email and password.
And there are certain requirements for passwords as well that we can basically configure incognito.
Let me quickly show you.
So let's see, I'll specify user name is Twitter email.
As instructors, I keep labs locked in and for password ID basically you see there is a password requirement
that it must contain a lowercase letter, uppercase letters, specific letter, etc., etc. So you'll
have to set a password accordingly.
So let me go ahead and set the password that matches this.
Now do not tag all of these things that you see.
All here can be configured at the cognitive level.
So let me also quickly show you this.
So let me go back to the user pool audio.
And within a year, if you'll see under the password policy, it basically states contain at least one
number, contain at least one uppercase letter password, minimum length of eight characters.
You can easily go ahead and have a custom password policy depending upon the requirements in your organization.
All right.
So let me go ahead and click on sign up here.
Now as soon as we did the sign up, you see it is asking for a verification code.
So this verification code will go to the e-mail.
So within the e-mail, I basically received the verification code already, you know, at this specific
stage.
If I go to users or you should see that there is one user with the username of the Twitter email address,
says instructor Derek Believes Durden.
And it also shows you whether the email is verified or not.
And in the confirmations date, it is and unconfirmed.
So let's go ahead and use this verification code.
So it is 083413 and I'll confirm the account.
So now if I refresh this audio, you'll see it is basically now confirm.
Now if you'll see it basically has redirected me to Google.
This is completely fine because I configured Google as a callback you added.
So basically once a user successfully signs in, then exactly.
You need to take that user within your application.
Now, since we do not really have an application, I had basically configured Google dot com.
So just for a demonstration purposes.
However, with this, I hope at a high level or you understood one of the important use cases which
deep cognitive really is also you do not need to be doing that authentication authorization system.
Let Cognita take care of it.
Now, when we discuss about the golden ego, there are two primary features that are available.
One is the user pools, and second one is the identity pools.
So the demo that we had taken is associated with the user pools.
So the cognitive user pool takes care of doing that authentication as well as the authorization process.
You also have an identity pool which basically provides the functionality of federation for the users
incognito.
So if we look into this specific diagram, you on the left hand side, do you have a mobile application
or a desktop application?
So the user can go ahead and perform the authentication through user pools.
So once the authentication is complete, they basically get their token.
So this token can be exchanged with the identity pool.
And once successfully authenticated with identity pool, what really happens is you get the credentials
like access secret keys through which you can go ahead and connect to various services in interviews.
So let's understand the use case of identity pool.
So let's say that you have a quiz based mobile application.
Now at the end of quiz, the user's results should be stored in their dynamo.
DB David.
Now for this mobile application to store the data in Dynamo DB table, some kind of access or a secret
key is needed.
So what you can do is you can maybe hide record the access or secret keys, which is not really a best
practice or in a better approach.
You can make use of your identity pool visit.
Once the user logs into the application, the application can make use of the identity pool to get the
access in secret keys, and that keys can be used for the overall accessibility for other services.
Great.
So this is a very high level overview about the Amazon Cognitive Service.