Google Cloud Storage
What it indexes
The Google Cloud Storage connector indexes objects from one GCS bucket through the storage.googleapis.com S3-compatible interoperability endpoint. Leave Path Prefix blank for the whole bucket. A non-empty value without a trailing slash is normalized with /, so reports lists reports/ rather than similarly named keys.
Prerequisites
- Choose one GCS bucket and, when needed, a path prefix ending at an approved folder boundary.
- Enable and create GCS interoperability HMAC credentials for a Google identity that can list the bucket and read matching objects.
- Keep both parts of the HMAC key available at creation time; the secret cannot be recovered later from Google Cloud.
- Allow connector workers to reach
storage.googleapis.comover HTTPS. - Do not prepare a service account JSON key, Project ID, or Region field for this connector; the current credential and connector forms do not accept them.
Credentials
Google Cloud Storage and S3 share OpenCore’s blob indexing implementation, but they do not share a credential contract. GCS has no S3 authentication-method selector, Role ARN, or AWS Region field.
Configure in OpenCore
- In Google Cloud, create or activate the approved identity’s HMAC interoperability key and record both values securely.
- In the OpenCore Admin panel, open Connectors, select Google Cloud Storage, and create the GCS credential.
- Enter the exact Bucket Name without
gs://or an object path. - Optionally enter Path Prefix. Use a key path such as
approved/reports; OpenCore normalizes it toapproved/reports/. - Choose Private and assign OpenCore groups for restricted objects. Use Public only when every account may search every object in scope.
- Set refresh and cleanup options, create the connector, and run the first indexing attempt.
Permissions
The HMAC identity needs permission to list the configured bucket/prefix and read every matching object. OpenCore uses those credentials to ingest content, but it does not synchronize GCS IAM policies, bucket ACLs, or object ACLs.
After indexing, search access is determined by the connector’s OpenCore Private groups or Public mode. Any user with connector access can search every indexed object even if that user has no Google Cloud access. Opening a citation in the Google Cloud Console requires separate Google Cloud authorization.
Verify
- Validate the connector and confirm it can list at least one object under the configured prefix.
- Run an indexing attempt and search for text from a recent object and a nested object.
- Confirm a key outside the normalized prefix is absent.
- Check that an oversized object and an image with image processing disabled are absent.
- Open a citation with an authorized Google Cloud browser session and confirm it points to the expected bucket and object.
- Test every assigned OpenCore group because GCS permissions will not be re-evaluated at search time.