Repository navigation
The auth module leaves amazon-cognito-identity-js (Amplify v5, end of support on 2027-03-01) for aws-amplify/auth v6: AWS stops flagging the apps, the sessions in place carry on, and the API stays almost the same. Next to the pages of today, which don't change, come new sign-in pages that an app brands with tokens only.
What changes
- Auth.
IDEAAuthServiceruns onaws-amplify/authv6 (#160). It identifies itself to Cognito asaws-amplify/6: the AWS Health notices about Amplify v5 stop once every app is updated. - Auth. New sign-in pages, opt-in (#164):
IDEAAuthRoutes, mounted in place ofrouteson the same path. The email first, then the password (or the page of the email's external provider); every flow (new password, MFA, password reset, sign-up, Okta) on one minimal layout, from a 320px phone to the desktop, light and dark. An app brands them with the--idea-auth-*tokens and thelogosetting, with no selector on the pages, and names the footer's credit and link to the intro page withIDEA_VARIABLES.MADE_BYandIDEA_VARIABLES.INTRO_LINK(see the module's README). The pages ofroutesstay exactly as they are, inlegacyAuthPages. - Common, Uncommon, Teams. The route sets and the guard take the
IDEAprefix of the other exports:IDEAAppStatusRoutes,IDEAAppStatusGuard,IDEAEchoRoutes,IDEATeamsRoutes,IDEAAccountRoutes. The old names (ideaAppStatusRoutes, …) stay, deprecated.
Behaviour changes for older versions
- The challenges of the sign-in (new password, MFA code) last 3 minutes: the app client's default, up to 15. The password is no longer kept to answer them, so past that time the module's pages say so (
IDEA_AUTH.SIGN_IN_SESSION_EXPIRED) and go back to the sign-in. A wrong MFA code can be given again, within the time. - The tokens are refreshed through Cognito's
GetTokensFromRefreshToken.
How to adopt the new version
- Update the
@idea-ionic/*modules to 8.15.0:aws-amplifycomes with@idea-ionic/auth, andamazon-cognito-identity-jsgoes away. - Copy
i18n/authagain: new termSIGN_IN_SESSION_EXPIRED, plusWARNINGandCHANGE_YOUR_PASSWORD_TO_LOGINback, and the terms of the new pages. Without it, an expired challenge shows an empty message. - Check in the app: sign-in, first access (new password), MFA (setup, challenge, disable), password reset and logout.
- Optional, to switch to the new pages: mount
IDEAAuthRoutesin place ofroutes, set the tokens and thelogowhere the app sets its theme, then delete the app's CSS aimed at the old pages.