Overview
The Science Cloud uses a centralized Identity and Access Management system to provide users a single Science Cloud identity to access all of their AWS accounts through a new single sign-on (SSO) workflow.
AWS Console Login Experience by User Type
NASA Users
If you have a NASA identity, once you are notified your Science Cloud identity is ready, your AWS Console login process will be:
- Navigate to the access portal link: http://aws.sciencecloud.nasa.gov/
- Login using your @nasa.gov email address
- You will be prompted to authenticate using your PIV credentials via Launchpad
- Once authenticated, you'll be redirected to the AWS Access Portal
NASA Collaborators
If you do not have a NASA identity, once you are notified your Science Cloud identity is ready, your AWS Console login process will be:
- Navigate to the access portal link: http://aws.sciencecloud.nasa.gov/
- Enter the email address you were invited to Entra ID with (this email address will be specified when you are notified that your Science Cloud identity is ready)
- Follow login prompts
- Complete multi-factor authentication using Microsoft Authenticator
- If this is your first time logging in, you'll be guided through setting up Microsoft Authenticator on your mobile device
- Once authenticated, you'll be redirected to the AWS Access Portal
AWS Access Portal
After successful authentication, you'll land on the AWS Access Portal - your central hub for accessing AWS resources.
What you'll see:
- A list of AWS accounts you have permission to access
- Available roles for each account based on your assigned permissions
How to access your Science Cloud AWS account:
- Select the AWS account you want to access
- Choose the appropriate role
- Click to launch the AWS Management Console or use programmatic access options
Programmatic Access to AWS
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:
Option 1: AWS CLI SSO Integration (Recommended)
For seamless, long-term programmatic access, configure the AWS CLI to work directly with IAM Identity Center:
Initial Setup
Important: Remove any existing aws_access_key_id and aws_secret_access_key related to your AWS account from your ~/.aws/credentialsfile before proceeding.
Configure SSO Session
- Set up the SSO session:
aws configure sso-session - Enter the required details:
- SSO session name:
my-org-sso(choose a memorable name) - SSO start URL: https://d-9067c5bbc5.awsapps.com/start/#
- SSO region:
us-east-1 - SSO registration scopes:
sso:account:access
- SSO session name:
Configure Profiles
You can create profiles for each AWS account/role combination you need to access:
aws configure ssoProvide the following information:
- SSO session name:
my-org-sso(same as above) - SSO account ID: The 12-digit AWS account ID
- SSO role name: The role name you want to assume (e.g., Project-Admin, Project-Power-User, Project-Read-Only)
- CLI default client Region:
us-east-1(or your preferred region) - CLI default output format:
json
Manual Configuration (Alternative)
For multiple accounts/roles, you can manually edit ~/.aws/config:
[sso-session my-org-sso]
sso_region = us-east-1
sso_start_url = https://d-9067c5bbc5.awsapps.com/start/#
[profile dev-account]
sso_session = my-org-sso
sso_account_id = 111122223333
sso_role_name = Project-Power-User
region = us-east-1
output = json
[profile prod-account]
sso_session = my-org-sso
sso_account_id = 444455556666
sso_role_name = Project-Read-Only
region = us-east-1
output = jsonUsing SSO-Configured Profiles
- Sign in to SSO:
This will open your browser for authentication (same process as portal login).aws sso login --profile dev-account
Sign out when finished:
aws sso logoutOption 2: Temporary Access Keys from the Portal
For quick, short-term programmatic access:
- Log into the AWS Access Portal using the steps above
- Select your desired AWS account and role
- In the account/role view, click "Command line or programmatic access"
- Choose your preferred option:
- Option 1: Copy and paste the temporary credentials as environment variables
- Option 2: Add the temporary credentials to your
~/.aws/credentialsfile - Option 3: Use the provided
aws configurecommands
Note: These credentials are temporary and will need to be refreshed periodically.