Jump to content
Welcome to our new Citrix community!

PoC Guide: Configuring Google Cloud Identity and Microsoft Active Directory in Citrix DaaS

  • Contributed By: Arnaud Pain Special Thanks To: Steve Beals

Overview

Google Cloud Identity is an Identity as a Service (IDaaS) solution that centrally manages users and groups. Google Cloud Identity can be configured to federate identities between Google and other identity providers, such as Active Directory and Azure Active Directory. Using the Google Cloud Identity provider in Citrix DaaS requires planning the deployment to ensure success.

This POC Guide focuses on using Google Cloud Identity and Microsoft Active Directory.

Microsoft Active Directory

There is no way to synchronize users from Google Cloud to Microsoft Active Directory. The synchronization is from Microsoft Active Directory to Google Cloud.

Configure Citrix DaaS

In this first step, configure Citrix DaaS by creating a resource location, deploying Citrix Cloud Connectors, and creating a Machine Catalog and Delivery Group. Lastly, validate the deployment using LDAP authentication so that everything works as expected.

  1. Deploy two new domain-joined Windows Server 2022 virtual machines.

  2. Configure the Resource Location in Citrix DaaS.

  3. Create an on-premises Resource Location.

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config1.png

  4. On your Windows Server 2022 virtual machines created, download, and install Citrix Cloud Connector.

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config2.png

  5. Configure the Hosting Connection.

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config3.png

  6. Create a Machine Catalog named "Windows 10 MCS Google IdP" with 2 VDAs.

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config4.png

  7. Create a Delivery Group named "Windows 10 MCS Google IdP".

  8. Publish Desktop "Windows 10 MCS Google IdP".

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config5.png

  9. Change the Workspace URL.

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config6.png

  10. Validate access using LDAP.

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config7.png

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config8.png

    poc-guides_citrix-daas-google-chrome-identity_citrix-daas-config9.png

Connect Google as an Identity provider to Citrix Cloud

It is assumed here that you already use Google Cloud IdP and have users created in Google Cloud.

Create a service account

To complete this task, you need a Google Cloud Platform developer account.

  1. Sign in to Google Cloud Console.
  2. From the Dashboard sidebar, select IAM & Admin and then choose Service Accounts.

    poc-guides_citrix-daas-google-chrome-identity_service-account1.png

    poc-guides_citrix-daas-google-chrome-identity_service-account2.png

    poc-guides_citrix-daas-google-chrome-identity_service-account3.png

  3. Select Create service account.

    poc-guides_citrix-daas-google-chrome-identity_service-account4.png

  4. Under Service account details, enter the service account name and service account ID.

    poc-guides_citrix-daas-google-chrome-identity_service-account5.png

  5. Select Done.

Create a service account key

  1. On the Service Accounts page, select the service account you created.
  2. Select the Keys tab, then select Add key > Create new key.

    poc-guides_citrix-daas-google-chrome-identity_service-key1.png

  3. Leave the default JSON key type option selected.
  4. Select Create. Save the key to a secure location that you can access later. You enter the private key in the Citrix Cloud console when you connect Google as an identity provider.

    poc-guides_citrix-daas-google-chrome-identity_service-key2.png

Configure domain-wide delegation

  1. Enable the Admin SDK API:
  2. Select APIs & Services > Enabled APIs & services from the Google Cloud Platform menu.

    poc-guides_citrix-daas-google-chrome-identity_domain1.png

  3. Select Enable APIs and services near the top of the console. The API Library home page appears.

    poc-guides_citrix-daas-google-chrome-identity_domain2.png

  4. Search for Admin SDK API and select it from the results list.

    poc-guides_citrix-daas-google-chrome-identity_domain3.png

  5. Select Enable.

    poc-guides_citrix-daas-google-chrome-identity_domain4.png

  6. Create an API client for the service account:
  7. Select IAM & Admin > Service Accounts from the Google Cloud Platform menu, and then select the service account you created earlier.

    poc-guides_citrix-daas-google-chrome-identity_domain5.png

  8. From the service account's Details tab, expand Advanced settings.

    poc-guides_citrix-daas-google-chrome-identity_domain6.png

  9. Under Domain-wide Delegation, copy the Client ID and select View Google Workspace Admin Console.

    poc-guides_citrix-daas-google-chrome-identity_domain7.png

  10. If applicable, select the Google Workspace administrator account you want to use. The Google Admin console appears.
  11. From the Google Admin sidebar, select Security > Access and data control > API controls.

    poc-guides_citrix-daas-google-chrome-identity_domain8.png

  12. Under Domain wide delegation, click Manage Domain Wide Delegation.

    poc-guides_citrix-daas-google-chrome-identity_domain9.png

  13. Select Add new.

    poc-guides_citrix-daas-google-chrome-identity_domain10.png

  14. In Client ID, paste the client ID for the service account you copied in Step C.

    poc-guides_citrix-daas-google-chrome-identity_domain11.png

  15. In OAuth scopes, enter the following scopes in a single comma-delimited line:

https://www.googleapis.com/auth/admin.directory.user.readonly,https://www.googleapis.com/auth/admin.directory.group.readonly,https://www.googleapis.com/auth/admin.directory.domain.readonly

  1. Select Authorize.

Add a read-only API user account

Create a Google Workspace user account with read-only API access for Citrix Cloud in this task. This account is not used for any other purpose and has no other privileges.

  1. From the Google Admin menu, select Directory > Users.

    poc-guides_citrix-daas-google-chrome-identity_api1.png

  2. Select Add new user and enter the appropriate user information.

    poc-guides_citrix-daas-google-chrome-identity_api2.png

  3. Select Add new user to save the account information.

    poc-guides_citrix-daas-google-chrome-identity_api3.png

  4. Create a custom role for the read-only user account:

  5. From the Google Admin menu, select Account > Admin roles.

    poc-guides_citrix-daas-google-chrome-identity_api4.png

  6. Select Create new role.

    poc-guides_citrix-daas-google-chrome-identity_api5.png

  7. Enter a name for the new role. Example: API-ReadOnly

    poc-guides_citrix-daas-google-chrome-identity_api6.png

  8. Select Continue.

  9. Under Admin API privileges, select the following privileges:

    • Users > Read
    • Groups > Read
    • Domain Management

    poc-guides_citrix-daas-google-chrome-identity_api7.png

  10. Select Continue and then select Create role.

    poc-guides_citrix-daas-google-chrome-identity_api8.png

  11. Assign the custom role to the read-only user account that you created earlier:

  12. From the custom role details page, in the Admins pane, select Assign users.

    poc-guides_citrix-daas-google-chrome-identity_api9.png

  13. Start typing the name of the read-only user account and select it from the user list.

poc-guides_citrix-daas-google-chrome-identity_api10.png

  1. Select Assign role.

    poc-guides_citrix-daas-google-chrome-identity_api11.png

  2. To verify the role assignment, return to the Users page (Directory > Users) and select the read-only user account.
  3. The custom role assignment is displayed under Admin roles and privileges.

Connect Google to Citrix Cloud

The next step is configuring Citrix DaaS to use Google Cloud as Identity Provider. The first step is to configure Google Cloud Identity globally.

  1. Sign in to Citrix Cloud.
  2. From the Citrix Cloud menu, select Identity and Access Management.

    poc-guides_citrix-daas-google-chrome-identity_gconnect1.png

  3. Locate Google and select Connect from the ellipsis menu.

    poc-guides_citrix-daas-google-chrome-identity_gconnect2.png

  4. Select Import File and then select the JSON file you saved when you created the key for the service account. This action imports your private key and the email address for the Google Cloud service account that you created.

    poc-guides_citrix-daas-google-chrome-identity_gconnect3.png

  5. In Impersonated User, enter the name of the read-only API user account.
  6. Select Next. Citrix Cloud verifies your Google account details and tests the connection.

    poc-guides_citrix-daas-google-chrome-identity_gconnect4.png

  7. Review the associated domains that are listed. If they're correct, select Confirm to save your configuration.

Enable Google for workspace authentication

Now that Google Cloud Identity is configured switch the Workspace configuration to use it.

  1. From the Citrix Cloud menu, select Workspace Configuration > Authentication.

    poc-guides_citrix-daas-google-chrome-identity_gworkspace1.png

  2. Select Google. When prompted, select I understand the impact on the subscriber experience, then click Save.

    poc-guides_citrix-daas-google-chrome-identity_gworkspace2.png

Configure Google Cloud Directory Sync

We must configure Google Cloud Directory Sync to synchronize users from Microsoft Active Directory to Google Cloud.

  1. Download the tool from Google Cloud Directory Sync.
  2. Install GCDS Tool.
  3. Open the tool and configure it.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory1.png

  4. In Google Domain Configuration:
  5. Provide a Google Domain name and click Authorize Now. A webpage will open and ask you to authenticate with your admin account and accept changes.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory2.png

  6. In LDAP Configuration:
  7. Select the connection Type, provide the host name, define the port, and provide credentials. Click Test connection to validate.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory3.png

  8. In General Settings:
  9. Have Users Accounts, Groups, and Custom Schemas checked.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory4.png

  10. In User Accounts:
  11. In the User Attributes Tab: Click Use defaults, and select Don't suspend or delete Google domain users not found in LDAP.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory5.png

  12. In User Accounts:
  13. In the Additional User Attributes Tab: Click Use defaults.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory6.png

  14. In User Accounts:
  15. In Search Rules Tab: Click Use defaults.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory7.png

  16. In Groups:
  17. In Search Rules Tab: Click Use defaults.
  18. In Custom Schemas, click Add Schema.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory8.png

  19. Select Use rules defined in "User Accounts" and provide Schema Name citrix-schema.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory9.png

  20. Click Add Field and create the following

    poc-guides_citrix-daas-google-chrome-identity_gdirectory10.png

  21. Click OK.

    poc-guides_citrix-daas-google-chrome-identity_gdirectory11.png

  22. Click Sync and click Sync & apply changes.

Note:

Save your configuration by clicking the menu File > Save as. This creates an XML file. When you close the GCDS Tool, the configuration does not save by default. Select the menu File > Open Recent > youfile.xml on the next opening to retrieve your saved configuration.

Configure Google Password Sync

Now we configure Password Sync to synchronize passwords from Microsoft Active Directory to Google Cloud. This tool must be installed on all your Microsoft Active Directory Domain Controllers.

  1. Download Google Password Sync
  2. Install Google Password Sync.
  3. Open Google Password Sync.

    poc-guides_citrix-daas-google-chrome-identity_gsync1.png

  4. Click Next.

    poc-guides_citrix-daas-google-chrome-identity_gsync2.png

  5. Provide Admin email address and select Load Credentials. When prompted, select the JSON File. Click Next.

    poc-guides_citrix-daas-google-chrome-identity_gsync3.png

  6. Click Next.

    poc-guides_citrix-daas-google-chrome-identity_gsync4.png

  7. Click Finish.

Note:

After Password Sync is installed and configured, it sends updated passwords to Your Google Account each time an Active Directory user changes his password in AD. To force synchronization of your Active Directory passwords to Google, restart the Password Sync service from the Services console:

poc-guides_citrix-daas-google-chrome-identity_gsync5.png

A script can also be created to restart it with the following line: net stop "password Sync" && net start "password sync"

Sync user in Google

Now configure Google Cloud Directory Sync.

poc-guides_citrix-daas-google-chrome-identity_gusersync1.png

  1. Click Sync & apply changes.

    poc-guides_citrix-daas-google-chrome-identity_gusersync2.png

  2. Click Continue.

    poc-guides_citrix-daas-google-chrome-identity_gusersync3.png

  3. Click Close.

Change user setting

When created by default, a new Google account user has a setting to change the password on the first login. If you do not change it, the AD and Google Passwords will differ after the initial login. To avoid this, please follow the steps below.

  1. In the admin console, select the created user.

    poc-guides_citrix-daas-google-chrome-identity_guserset1.png

  2. Ensure citrix-schema is present and information is filled (to ensure access to published resources).

    poc-guides_citrix-daas-google-chrome-identity_guserset2.png

  3. Under Security, edit the Require password change.

    poc-guides_citrix-daas-google-chrome-identity_guserset3.png

  4. Change from ON to OFF and Save.

    poc-guides_citrix-daas-google-chrome-identity_guserset4.png

Validation

  1. Connect to the workspace URL. You get redirected to Google Authentication. Provide your email address and click Next.

    poc-guides_citrix-daas-google-chrome-identity_gvalidation1.png

  2. Provide your password and click Next.

    poc-guides_citrix-daas-google-chrome-identity_gvalidation2.png

  3. Click I understand.

    poc-guides_citrix-daas-google-chrome-identity_gvalidation3.png

  4. The published resources appear. Click your desktop.

    poc-guides_citrix-daas-google-chrome-identity_gvalidation4.png

  5. Desktop launch with SSO.

    poc-guides_citrix-daas-google-chrome-identity_gvalidation5.png

Connect Google to Citrix Cloud

Now, configure Citrix DaaS to use Google Cloud as Identity Provider. The first step is to configure Google Cloud Identity globally.

  1. Sign in to Citrix Cloud.
  2. From the Citrix Cloud menu, select Identity and Access Management.

    poc-guides_citrix-daas-google-chrome-identity_connect1.png

  3. Locate Google and select Connect from the ellipsis menu.

    poc-guides_citrix-daas-google-chrome-identity_connect2.png

  4. Select Import File and then select the JSON file you saved when creating the service account key. This action imports your private key and the email address for the Google Cloud service account that you created.

    poc-guides_citrix-daas-google-chrome-identity_connect3.png

  5. In Impersonated User, enter the name of the read-only API user account.
  6. Select Next. Citrix Cloud verifies your Google account details and tests the connection.

    poc-guides_citrix-daas-google-chrome-identity_connect4.png

  7. Review the associated domains that are listed. If they're correct, select Confirm to save your configuration.

Enable Google for workspace authentication

Now that Google Cloud Identity is configured, we can switch the Workspace configuration to use it.

  1. From the Citrix Cloud menu, select Workspace Configuration > Authentication.

    poc-guides_citrix-daas-google-chrome-identity_auth1.png

  2. Select Google. Select *I understand the impact on the subscriber experience, then click Save.

    poc-guides_citrix-daas-google-chrome-identity_auth2.png

Create a Machine Catalog

There is no Microsoft Active Directory in this use case, so the VDAs are non-domain joined. More details can be found here

Validation

  1. Connect to the workspace URL. You get redirected to Google Authentication. Provide your email address and click Next.

    poc-guides_citrix-daas-google-chrome-identity_validation1.png

  2. Provide your password and click Next.

    poc-guides_citrix-daas-google-chrome-identity_validation2.png

  3. Click I understand.

    poc-guides_citrix-daas-google-chrome-identity_validation3.png

  4. The published resources appear. Click Desktop.

    poc-guides_citrix-daas-google-chrome-identity_validation4.png

  5. Desktop launch with SSO.

    poc-guides_citrix-daas-google-chrome-identity_validation5.png


User Feedback


There are no comments to display.



Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...