# Google Identity Services
Administrator logins can be tied to Google Workspaces accounts using Google Identity Services. This allows customers to use Google Workspaces as source of single sign-on logins. When a user logs in through Google Identity Services, an administrator account is automatically created if one did not exist.
Note
This feature is only available for web portal administrator logins.
# Create an OAuth Web Application
To create the necessary credentials for your deployment to authenticate using Google Identity Services follow the steps below:
- Follow the instructions to configure your OAuth consent screen.
- Open the Credentials page of the Google APIs console.
- Click Create credentials > OAuth client ID.
- For application type, select Web Application.
- For Authorized JavaScript origins, enter a URL in the following format:
https://<DEPLOYMENT_HOSTNAME>/
. - Click Save.
- Copy the Client ID of the newly created web application credentials.
To enable Google Identity Services in the application, open the configuration file and add the following settings:
google_identity_service:
client_id: <YOUR_CLIENT_ID>.apps.googleusercontent.com
Note
You must have a HTTPS enabled with a public top-level domain to use Google Identity Services.
# Restrict Access to Specific Groups
By default, all users in your Google Workspace account will be granted access. To restrict access to certain groups, you must configure the application to retrieve group information using the Google Workspace Admin SDK API.
- Follow the instructions to set up a service account with Domain-Wide Delegation.
- When delegating the API scopes to the service account, delegate the
https://www.googleapis.com/auth/admin.directory.group.readonly
scope only. - Upload the service account JSON key to your application VM.
- Enable the Admin SDK API.
In order for the application to make API calls to the Admin SDK API, you must specify a Google Workspace user with admin credentials which it will impersonate using the gsuite_admin_email
setting.
To enable group restrictions, open the configuration file and add the following settings:
google_identity_service:
client_id: <YOUR_CLIENT_ID>.apps.googleusercontent.com
service_account_key: <PATH_TO_SERVICE_ACCOUNT_KEY>.json
allowed_groups:
- <ALLOWED_GROUP_1>
- <ALLOWED_GROUP_2>
gsuite_admin_email: <ADMIN_USER@YOUR_DOMAIN>