The Science Cloud uses a centralized Identity and Access Management system. This system provides users a single Science Cloud identity to access all of their AWS accounts through a new single sign-on (SSO) workflow.
If you have a NASA identity, once you are notified that your Science Cloud identity is ready, your AWS Console login process will be:
If you do not have a NASA identity, once you are notified that your Science Cloud identity is ready, your AWS Console login process will be:
After successful authentication, you'll land on the AWS Access Portal - your central hub for accessing AWS resources.
| Role | Session Duration |
|---|---|
| Project-Admin | 2 Hours |
| Project-Power-User | 8 Hours |
| Project-Read-Only | 12 Hours |
In addition to using the AWS Management Console through the portal, you can also access AWS programmatically using the AWS CLI and SDKs. There are two main approaches:
For seamless, long-term programmatic access, configure the AWS CLI to work directly with IAM Identity Center:
Important: Before proceeding, remove any existing aws_access_key_id and aws_secret_access_key related to your AWS account from your ~/.aws/credentials file.
aws configure sso-sessionus-east-1 sso:account:accessYou can create profiles for each AWS account/role combination you need to access:
aws configure ssoyour-memorable-sso-name (same as above)us-east-1 (or your preferred region)jsonProfile name [default_provided]: (choose a memorable name)
You can manually edit ~/.aws/config:
[sso-session your-memorable-sso-name]
sso_region = us-east-1
sso_start_url = https://d-9067c5bbc5.awsapps.com/start/#
[profile your-memorable-profile-name-1]
sso_session = your-memorable-sso-name
sso_account_id = your-AWS-account's-numeric-accoun-ID
sso_role_name = your-role(e.g. Project-Power-User)
region = us-east-1
output = json
[profile your-memorable-profile-name-1]
sso_session = your-memorable-sso-name
sso_account_id = your-other-AWS-account's-numeric-account-ID
sso_role_name = your-role(e.g. Project-Read-Only)
region = us-east-1
output = json1. Sign in to SSO:
aws sso login --profile your-profile-name
This will open your browser for authentication (same process as portal login).
2. Run AWS CLI commands:
aws sts get-caller-identity --profile your-profile-name
If you do no do not want to specify --profile your-profile-name for every command:
export AWS_PROFILE=your-profile-name
3. Sign out when finished:
aws sso logoutFor quick, short-term programmatic access: