Connecting Amazon Q Business to Google Drive using AWS CloudFormation - Amazon Q Business

Connecting Amazon Q Business to Google Drive using AWS CloudFormation

You use the AWS::QBusiness::DataSource resource to connect a data source to your Amazon Q application.

Use the configuration property to provide a JSON or YAML schema with the necessary configuration details specific to your data source connector.

To learn more about AWS CloudFormation, see What is AWS CloudFormation? in the AWS CloudFormation User Guide.

Google Drive New AWS CloudFormation template

The following is the Google Drive New AWS CloudFormation template. Copy and save this template to a file on your local drive.

For more information about AWS CloudFormation templates, see Working with AWS CloudFormation templates in the AWS CloudFormation User Guide.

{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "Template to connect Google Drive New to Amazon Q Business", "Parameters": { "ApplicationId": { "Type": "String", "Description": "Amazon Q Business Application ID" }, "IndexId": { "Type": "String", "Description": "Amazon Q Business Index ID" }, "DataSourceName": { "Type": "String", "Description": "Name for the Google Drive data source" }, "RoleArn": { "Type": "String", "Description": "IAM Role ARN for the data source" }, "SecretArn": { "Type": "String", "Description": "AWS Secrets Manager ARN containing Google Drive credentials" } }, "Resources": { "GoogleDriveV3DataSource": { "Type": "AWS::QBusiness::DataSource", "Properties": { "ApplicationId": {"Ref": "ApplicationId"}, "IndexId": {"Ref": "IndexId"}, "DisplayName": {"Ref": "DataSourceName"}, "RoleArn": {"Ref": "RoleArn"}, "Configuration": { "type": "GOOGLEDRIVEV3", "connectionConfiguration": { "secretArn": {"Ref": "SecretArn"}, "authType": "SERVICE_ACCOUNT" }, "dataEntityConfiguration": { "crawlMyDrive": true, "crawlSharedWithMe": true, "crawlSharedDrives": false }, "accessControlConfiguration": { "crawlAcl": true }, "filterConfiguration": { "maxFileSizeInMegaBytes": "50" }, "crawlIdentities": false, "deletionProtectionConfiguration": { "enableDeletionProtection": true, "deletionProtectionThreshold": "15" } } } } } }