You can import existing identity provider (IdP) groups into Astro Private Cloud as Teams, which are groups of Astro users that have the same set of permissions for a specific Workspace or Deployment. Configuring Teams lets you quickly onboard staff to APC and provides better control of user permissions.
APC Teams function similar to users. You can:
After you configure SCIM, you can use templates to add or remove Teams on Astro Private Cloud and manage groups of users directly from your IdP. However, if SCIM isn’t available, you can pre-populate groups via the UI or API following the procedure for Create local teams. With either process, when you create new user groups in the future, you can automatically apply a batch of permissions that they need to access Astro Private Cloud.
Before you implement Teams, consider the following:
SYSTEM ADMIN permissions. If you configure Teams for a new Astronomer installation, Astronomer recommends signing in first as the user responsible for importing your IdP groups using the default Astronomer sign-in flow.Astronomer user roles function on a most permissive policy: If a user has roles defined at both the Workspace and the Team level, then that user will continue to have the most permissive role between the two contexts. This policy has a few implications for implementing Team:
For example, consider a user with Workspace Editor permission in a Production Workspace via Astronomer’s default authentication for the last year. Your organization begins using Okta as your authentication system for Astronomer and adds this user to a Team with Workspace Viewer permissions in Production Workspace. Because the user still has Workspace Editor permissions from their original account, they continue to have Workspace Editor permissions in Production Workspace. The only way to remove their Editor permissions is to have a Workspace Admin remove them through Workspace settings.
To complete this setup, you need:
Astronomer also recommends setting up SCIM so that you can manage user groups as Teams directly from your IdP.
In your values.yaml file, set the following value.
Save this configuration and push it to your platform as described in Apply a Platform Config Change.
To add your IdP group to Astronomer as a Team, Astronomer needs to be able to recognize the IdP group through a group claim and assign members from the group through tokens.
If you haven’t already, add group claims to the IdP groups that you’re importing to Astronomer through your configured third party identity provider. Refer to your IdP’s documentation for information on how to complete this step. For example, for Okta you can refer to Customize tokens returned from Okta with a Groups claim.
By default, Astronomer assumes that the name of your group claim is groups. If you named your group claim something other than groups, complete the following setup:
values.yaml file, set houston.config.auth.openidConnect.<idp-provider>.claimsMapping to the custom name of your group claim.After configuring and importing user groups, Workspace Admins and Deployment Admins can configure those groups as Teams using the UI. You can add Teams to Workspace and Deployments in the same way that you add individual users.
If you want to create a Team of Astronomer users, and the team doesn’t map to a group in the IdP, you can enable local team creation. This means that if SCIM sync isn’t available, you don’t have to wait for a user to sign in to Astro Private Cloud for their IdP user groups to sync. You can instead create teams using a locally available source of users.
To enable the feature, add the following configuration to your values.yaml file and apply the change to your installation.
Then, to create a local Team:
You can now add the local Team to a Workspace or Deployment as you would with an IdP Team or an individual user.
To use Teams as the only user management system on Astro Private Cloud, add the following entry to your values.yaml file:
Save this configuration and push it to your platform. See Apply a Platform Config Change.
After you apply the configuration, individual users can’t be invited or assigned Workspace or Deployment-level roles in Astro Private Cloud. Users must be invited through a Team by a System Admin, and only Teams can be assigned roles for Workspaces and Deployments. You can still create individual service accounts with Workspace and Deployment permissions.