liftoff
The major advantage of atlas is its ability to preform authentication, via Single Sign On, and
render a satellite application’s shell, or all common components that every satellite application
must have. A call to liftoff will ensure the user is authenticated and will then start
the process rendering of the shell. This process can take some time thus the call returns a
promise that is resolved when the shell is finished rendering.
Your application must wait for the promise to be resolved before displaying any account / user
specific information.
var promise = atlas.liftoff({
env: "prod",
mainNavId: "Assgined by Platform"
});
promise.done( function(contexts) {
// observable username and bearerToken
authContext = contexts.authContext();
// observable account, branding, and support information
accountContext = contexts.accountContext();
});
If not present in the DOM launch will add the account-switcher,
brand-bar, and main-nav nodes for you. However, to prevent flashing
when the nodes are added it is best practice to include them in the satellite application markup.
<body>
<account-switcher></account-switcher>
<brand-bar></brand-bar>
<main-nav></main-nav>
<main>
<!-- Your Content Here -->
</main>
<!-- Scripts -->
</body>
Configuration Parameters
| Name |
Type |
Required |
Description |
| env |
string | object |
yes |
Valid values are dev, ppe, or prod. An object may be passed for custom enviroments, it must contain the following values auth0ClientID, auth0Domain, controlBaseUrl |
| mainNavId |
string | observable string |
no |
The id of the menu to select in the main-nav. This is assigned to a satellite application by the platform team when the menu item is added. |
| accountAlias |
string | observable string |
no |
If the accountAlias is known ahead of time, for instance becuase it is in the URL, this will seed the accountContext. |
| callbackURL |
string |
no |
[not recommended] Url that auth0 will navigate to after authentication |
| returnUrl |
string |
no |
[not recommended] Url that the user will be sent to after auth0 and atlas authentication |
| onLogin |
function |
no |
Will be called with the authContext. Can be used to set server side cookies |
| onLogout |
function |
no |
Will be called when the user logs out, can be used to clear server side cookies |
| includeAccountContextAndRenderShell |
boolean |
no |
[not recommended] Will calls be made to fetch the accountContext and render the shell |
Resolved Data Properties
| Name |
Type |
Description |
| authContext |
observable authContext |
An observable authContext model |
| accountContext |
Observable accountContext |
An observable accountContext model |
AuthContext Model
| Name |
Type |
Description |
| username |
string |
The currently authenticated user's username |
| bearerToken |
string |
The currently authenticated user's bearerToken |
AccountContext Model
| Name |
Type |
Description |
| accountAlias |
string |
current Account Alias, will either be the root or the impersonated account |
| branding |
Branding Model |
Branding information for the current account |
| support |
Support Model |
Support information for the current account |
Support Model
| Name |
Type |
Description |
| chatServiceUrl |
String |
Url to open a chat with support |
| featureRequestUrl |
String |
Url to open a feature request |
| knowledgeBaseSearchUrl |
String |
Url to search the knowledge base |
| supportEmail |
String |
Email address to support |
| supportPhone |
String |
Phone number of support |
| supportRequestUrl |
String |
Url to open ans support request |
Branding Model
| Name |
Type |
Description |
| controlLogoutUrl |
String |
Url to logout of the Control Portal |
| controlName |
String |
Branded Control Portal Name |
| controlUrl |
String |
Url of the Control Portal |
| cssUrl |
String |
Url to branded CSS file |
| favIconUrl |
String |
Url to Favicon image |
| headerBackgroundColor |
String |
Hex value of the branded header background color |
| mobileIconUrl |
String |
Url to mobile icon image |
| portalLogoUrl |
String |
Url to Control Portal Branded Logo image |