Skip to content

Sessions

A Session contains all the relevant information to let the dev connect to a cloud provider. Three standard actions should be implemented for each session: start, stop, and rotate.

Actions

Method Description
START  Make the temporary credentials available to the provider chain
STOP  Removes the temporary credentials from the provider chain
ROTATE  Generate new temporary credentials, and substitute the previous ones in the provider chain

Session Model Data

All Sessions Models shares some basic information, common to all of them. These variables must be defined all the time.

Info

The process of setting up Leapp Sessions is managed either manually, for each access method, or through integrations with third-party tools. Leapp stores all the Sessions available to the users locally, inside a configuration file called Workspace.

...
export class Session {

  sessionId: string;
  sessionName: string;
  status: SessionStatus;
  startDateTime: string;
  region: string;
  type: SessionType;

  ...
}
Session Variable Description
sessionId Unique identifier to the Session. Is defined at Model instantiation, and represent a unique ID for the session. Every operation involving a specific session must start by getting a session through its sessionId
sessionName A fancy name, given at creation by the user, for the Session to make it recognizable at glance.
status Represent the State Management of a single session; when the status of a session is active, temporary credentials are available to the user. The possible values are: inactive, pending, active
startDateTime A UTC DateTime string representing the last time a specific Session has started; this is useful for rotation and sorting purposes
region The AWS Region or Azure Location the Session is working on. For a complete list of AWS Regions go here, and for Azure Locations, go here
type Uniquely identifies two important aspects to determine the Session: Cloud Provider and Access Method.. Possible values are: awsIamRoleFederated, awsIamUser, awsIamRoleChained, awsSsoRole, azure. The naming convention we are using is cloudProvider-accessMethod: Cloud Provider on which you are connecting (i.e., AWS, Azure, GCP...), and the Access Method used to generate credentials (i.e., AWS IAM User, Azure Tenant, AWS IAM Role...)
Back to top