Open Amazon Cognito Console in region us-east-1.
Open your user pool and go to Social and external providers.
Click Add identity provider.

Select provider type Google.
Enter your Google OAuth Client ID and Client secret from Google Cloud Console.
Set authorized scopes: openid email profile.
Save changes.
Verify provider Google is present.
Verify mappings include these key fields:
email -> emailemail_verified -> email_verifiedname -> namepicture -> pictureusername -> sub

Open Amazon Cognito Console in region us-east-1.
Open User pools.
Click Create user pool.

Select application type Single-page application (SPA).
Enter application name: myfit cognito app client.
In sign-in identifiers, select Email.

Keep Enable self-registration selected.
Set required attributes to include email.
Enter return URL: https://myfit.click.
Click Create user directory.

Open your user pool, then open App clients.
Select app client Fitme-cognito-web-auth-service.
Open Edit managed login pages configuration.

Set Allowed callback URLs:
http://localhost:8081/callbackhttps://myfit.click/callbackmyfit://callbackSet Default redirect URL: https://myfit.click/callback.
Set Allowed sign-out URLs:
http://localhost:8081/logouthttps://myfit.click/logoutmyfit://logoutIn identity providers, select Google.
In OAuth 2.0 grant types, select Authorization code grant.

In OpenID Connect scopes, select:
emailopenidprofileClick Save changes.

Notice: The workshop sample domain
myfit.clickis already registered by our team through MatBao and is shown only as a reference. For your own setup, use your own domain and DNS zone. If you want easier end-to-end setup, you can purchase a domain directly in Route 53 (for example,myapp.com) and use that domain in all steps.
Open Route 53 Console - Hosted zones.
Confirm hosted zone myfit.click exists and type is Public.

Open hosted zone myfit.click - Records.
Verify core records:
A record for myfit.click points to CloudFront domain.A record for api.myfit.click points to ALB domain.CNAME records for myfit.click and api.myfit.click exist.NS and SOA records exist.

us-east-1_9AoKPqZO1.661fm3mj7s5qcmoldri1mem9sr.http://localhost:8081/callback, https://myfit.click/callback, and myfit://callback.http://localhost:8081/logout, https://myfit.click/logout, and myfit://logout.Google.code and scopes include email, openid, profile.