This repository contains the source code that synchronizes Google Workspace Users/Groups and Keeper Enterprise Users/Teams.
This code duplicates the keeper scim push --source=google
Commander's command and shares configuration settings with this command.
To setup SCIM configuration please reference this Commander's page Google Workspace Integration
Once the scim push
command completes successfully the SCIM sync process can be transfered to the Google Cloud
- Keeper Secret Manager enterprise subscription
- Create KSM application or reuse the existing one
- Share the SCIM configuration record with this KSM application
Add Device
and make sure method isConfiguration File
Base64 encoding.
- Clone this repository locally
- Copy
.env.yaml.sample
to.env.yaml
- Edit
.env.yaml
- Set
KSM_CONFIG_BASE64
to the content of the KSM configuration file generated at the previous step - Set
KSM_RECORD_UID
to configuration record UID created for Commander'sscim push
command
- Set
- Create Google Cloud function. Replace
<REGION>
placeholder with the GCP region.
gcloud functions deploy <PickUniqueFunctionName> \
--gen2 \
--runtime=go121 \
--max-instances=1 \
--memory=512M \
--env-vars-file .env.yaml \
--region=<REGION> \
--timeout=120s \
--source=. \
--entry-point=GcpScimSyncHttp \
--trigger-http \
--no-allow-unauthenticated
- Clone this repository locally
- Create
source.zip
file that contains ".go" and "go." matches
zip source.zip `find . -name "*.go"`
zip source.zip `find . -name "go.*"`
- Login to Google Console
- Create a new function
- Set
KSM_CONFIG_BASE64
to the content of the KSM configuration file generated at the previous step - Set
KSM_RECORD_UID
to configuration record UID created for Commander'sscim push
command
- Set
- Click
NEXT
- Set "Entry point" to
GcpScimSyncHttp
- Upload the source code using
source.zip
. "Destination bucket" can be any. - Click
DEPLOY