website/integrations: add google workspace integration (#5729)

* website/integrations: add google workspace integration

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* Apply suggestions from code review

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: Jens L. <jens@beryju.org>

* format

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

---------

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
Signed-off-by: Jens L. <jens@beryju.org>
Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
This commit is contained in:
Jens L 2023-05-25 00:24:39 +02:00 committed by GitHub
parent 22ee587e9f
commit 41de8f1191
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 74 additions and 12 deletions

View File

@ -26,9 +26,9 @@ The following placeholders will be used:
Create an application in authentik and note the slug, as this will be used later. Create a SAML provider with the following parameters: Create an application in authentik and note the slug, as this will be used later. Create a SAML provider with the following parameters:
- ACS URL: `https://signin.aws.amazon.com/saml` - ACS URL: `https://signin.aws.amazon.com/saml`
- Audience: `urn:amazon:webservices`
- Issuer: `authentik` - Issuer: `authentik`
- Binding: `Post` - Binding: `Post`
- Audience: `urn:amazon:webservices`
You can of course use a custom signing certificate, and adjust durations. You can of course use a custom signing certificate, and adjust durations.
@ -100,10 +100,10 @@ Additional Preparation:
In AWS: In AWS:
- In AWS navigate to: `IAM Identity Center -> Settings -> Identity Source (tab)` - In AWS navigate to: _IAM Identity Center_ -> _Settings_ -> _Identity Source (tab)_
- On the right side click `Actions -> Change identity source` - On the right side click _Actions_ -> _Change identity source_
- Select `External Identity Provider` - Select _External Identity Provider_
- Under `Service Provider metadata` download the metadata file. - Under _Service Provider metadata_ download the metadata file.
Now go to your authentik instance, and perform the following steps. Now go to your authentik instance, and perform the following steps.
@ -118,10 +118,10 @@ Now go to your authentik instance, and perform the following steps.
Now go back to your AWS instance Now go back to your AWS instance
- Under `Identity provider metadata` upload both the the `Metadata` file and `Signing Certificate` that authentik gave you. - Under _Identity provider metadata_ upload both the the _Metadata_ file and _Signing Certificate_ that authentik gave you.
- Click `Next`. - Click _Next_.
- In your settings pane, under the tab `Identity Source`, click `Actions -> Manage Authentication`. - In your settings pane, under the tab _Identity Source_, click _Actions_ -> _Manage Authentication_.
- Take note of the `AWS access portal sign-in URL` (this is especially important if you changed it from the default). - Take note of the _AWS access portal sign-in URL_ (this is especially important if you changed it from the default).
Now go back to your authentik instance. Now go back to your authentik instance.
@ -141,8 +141,8 @@ Some people may opt TO USE the automatic provisioning feature called SCIM (Syste
SCIM allows you to synchronize (part of) your directory to AWS's IAM, saving you the hassle of having to create users by hand. SCIM allows you to synchronize (part of) your directory to AWS's IAM, saving you the hassle of having to create users by hand.
In order to do so, take the following steps in your AWS Identity Center: In order to do so, take the following steps in your AWS Identity Center:
- In your `Settings` pane, locate the `Automatic Provisioning` Info box. Click `Enable`. - In your _Settings_ pane, locate the _Automatic Provisioning_ information box. Click _Enable_.
- AWS will give you an `SCIM Endpoint` and a `Access Token`. Take note of these values. - AWS will give you an _SCIM Endpoint_ and a _Access Token_. Take note of these values.
Go back to your authentik instance Go back to your authentik instance
@ -172,4 +172,4 @@ return {
- Under _Backchannel providers_ add the SCIM provider that you created. - Under _Backchannel providers_ add the SCIM provider that you created.
- Click _Update_ - Click _Update_
The SCIM provider should sync automatically whenever you create/alter/remove anything. You can manually sync by going to your SCIM provider and click the _Run sync again_ button. Once the SCIM provider has synced, you should see the users and groups in your AWS IAM center. The SCIM provider syncs automatically whenever you create/update/remove users, groups, or group membership. You can manually sync by going to your SCIM provider and clicking _Run sync again_. After the SCIM provider has synced, you should see the users and groups in your AWS IAM center.

View File

@ -0,0 +1,61 @@
---
title: Google Workspace
---
<span class="badge badge--primary">Support level: authentik</span>
## What is Google Workspace
From https://en.wikipedia.org/wiki/Google_Workspace
:::note
Google Workspace is a collection of cloud computing, productivity and collaboration tools, software and products developed and marketed by Google.
:::
## Preparation
The following placeholders will be used:
- `authentik.company` is the FQDN of the authentik install.
- `example.com` is the default E-mail address configured in Google workspace.
## authentik Configuration
Create an application in authentik and note the slug, as this will be used later. Set the _Launch URL_ to `https://mail.google.com/a/example.com`.
Create a SAML provider with the following parameters:
- ACS URL: `https://www.google.com/a/example.com/acs`
- Issuer: `google.com/a/example.com`
- Binding: `Post`
- Audience: `google.com/a/example.com`
Under _Advanced protocol settings_, set the option _NameID Property Mapping_ to the default E-mail property mapping called _authentik default SAML Mapping: Email_. Also make sure a _Signing Certificate_ is selected in the same section.
Copy the values of _SSO URL (Redirect)_ and _SLO URL (Redirect)_ fields from the provider page.
Click the _Download_ button next to the _Download signing certificate_ label.
## Google Workspace Configuration
Log in to the Google Workspace Admin portal by navigating to https://admin.google.com/, and authenticating with a super-admin account.
Navigate to _Security_ -> _Authentication_ -> _SSO with third-party IdP_.
Open the _Third-party SSO profile for your organization_ section.
Check the checkbox _Set up SSO with third-party identity provider_.
Set the value of _Sign-in page URL_ to the copied _SSO URL (Redirect)_ from above.
Set the value of _Sign-out page URL_ to the copied _SLO URL (Redirect)_ from above.
For _Verification certificate_, upload the certificate that you downloaded previously.
Ensure the option _Use a domain specific issuer_ is enabled.
## Notes
Google will not use these SSO settings with super-admins, although they will apply for any other user account. User accounts must already exist in Google workspace when attempting to login with authentik; Google will not create them automatically.
To verify that the configuration is correct for a super-admin account, navigate to `https://mail.google.com/a/example.com`, which redirects to the configured authentik instance.

View File

@ -36,6 +36,7 @@ module.exports = {
label: "Cloud Providers", label: "Cloud Providers",
items: [ items: [
"services/aws/index", "services/aws/index",
"services/google/index",
"services/hashicorp-cloud/index", "services/hashicorp-cloud/index",
"services/oracle-cloud/index", "services/oracle-cloud/index",
], ],