Organizations can use Amazon Web Services (AWS) as an identity provider for single sign-on (SSO) logins for users with Wallaroo Enterprise.
To enable AWS as an authentication provider to a Wallaroo instance:
Most user administration features are performed by admins through the Platform Admin Dashboard.
Additional settings are available by directly access the Wallaroo Administrative Service. This requires the following:
A user credential with administrative access. If for some reason no user with administrative access is available, the default admin
user and credentials are retrieved by a user with kubectl
and administrative access to the cluster with the following.
Retrieve Admin Password
kubectl -n wallaroo \
get secret keycloak-admin-secret \
-o go-template='{{.data.KEYCLOAK_ADMIN_PASSWORD | base64decode }}'
Access the Wallaroo Authentication service through a browser as an administrator. The Wallaroo Authentication Service URL is in the format $WALLAROODOMAIN/auth
. For example, if the Wallaroo Domain is wallaroo.example.com
then the Wallaroo Authentication Service URL would be wallaroo.example.com/auth
. See the DNS Integration Guide for more details on Wallaroo services with DNS.
Select Administration Console, then log in with an administrator account.
Using AWS as a single sign-on identity provider within Wallaroo requires access to the Wallaroo instance’s Administrative service. This process will require both the IAM Identity Center and Wallaroo Administrative service be available at the same time to copy information between the two. When starting this process, do not close the Wallaroo Administrative service browser window or the AWS IAM Identity Center without completing all of the steps until Verify the Login.
From the Wallaroo Administrative Service, select Administration Console.
From the left navigation panel, select Identity Providers.
Select Add provider and select SAML v2.0.
Enter the following:
Save the following information:
$WALLAROO_DOMAIN/auth/realms/master/broker/$ALIASID/endpoint
. For example, if the Wallaroo Domain is wallaroo.example.com
, the Redirect URI becomes wallaroo.example.com/auth/realms/master/broker/aws/endpoint
.$WALLAROO_DOMAIN/auth/realms/master
. For example: $WALLAROO_DOMAIN/auth/realms/master
.The next step is creating the AWS credentials, and requires access to the organization’s Amazon IAM Identity Center.
From the AWS console, select the IAM Identity Center.
From the IAM Identity Center Dashboard, select Applications then Add application.
Select Custom application->Add custom SAML 2.0 application, then select Next.
Enter the following:
AWS
or something similar depending on your organization’s requirements.Select the IAM Identity Center SAML metadata file and copy the URL. Store this for the step [Add AWS Credentials to Wallaroo](#add-aws-credentials-to-wallaroo(#add-aws-credentials-to-wallaroo).
Select Submit.
From the new application, select Actions->Edit attribute mappings.
Enter the following:
${user:email}
, with the Format emailAddress
.email
, mapped to ${user:email}
, with the Format emailAddress
.Select Save Changes to complete mapping the attributes.
From the IAM Identity Center Dashboard, select Users. From here, add or select the users or groups that will have access to the Wallaroo instance then select Assign Users.
Return to the Wallaroo Authentication Service and the new Identity Provider from Create the Wallaroo AWS SAML Identity Provider.
In Import External IDP Config->Import from URL, enter the IAM Identity Center SAML metadata file saved from Create the AWS Credentials in the field Service Provider Entity ID.
Select Import.
Once the AWS SAMl settings are imported, select Save to store the identity provider.
Once complete, log out of the Wallaroo instance and go back into the login screen. With the usual username and password screen should also be a AWS
link at the bottom or whatever name was set for the identity provider. Select that link to login.
Login to the IAM Application created in Create the AWS Credentials. The first time a user logs in they will be required to add their first and last name. After this, logins will happen as long as the user is logged into the AWS IAM application without submitting any further information.