Google Cloud Storage requires several steps to configure.

You will start at the API credentials manager:
https://console.developers.google.com/projectselector/apis/credentials

You need to enable the GoogleStorage API for your account if its not already.
https://console.developers.google.com/apis/library/storage-component.googleapis.com/
attachments

Create a new project. My example calls this "CrushFTP-Test".
attachments

1. Web Application type
#


Next, click on the "Create Credentials" button, and choose the Web Application type.
attachments

It will warn you if you don't have an "OAuth Consent" screen configured, so go there and configure that screen too.
attachments

When configuring the credential, you have to tell Google the domain you will be originating from when creating the auth token, so this is the URL you use for server administration. Just the protocol://dns_or_ip:port Don't have a trailing slash or it will complain.
Configure the redirect URL of where Google will send you back after approval. This needs to follow the syntax in the example. Specifically, your domain needs to end with:

?command=register_gdrive_api
attachments

And one last important step, you need to enable the GoogleDrive API for your account if its not already.
https://console.developers.google.com/apis/library/storage-component.googleapis.com/
attachments

Now that the API is enabled, your credentials are setup, and your redirect domains are configured, you can use the credentials in CrushFTP to get your Google auth token and get access.
In the User Manager, add a new remote VFS item type and set the protocol to be "GStorage".
Click "Get Refresh Token" to finish the config. Provide the client id and secret.

attachments

If your domain is not verified you will get a warning message, click on Advanced and proceed further:

attachments

Click on allow:

attachments

The refresh token will be saved as password.
Provide the bucket and the path.
It is done! Test the connection and save it!
attachments

2. Service Account type
#


Create Credentials -> Service Account.
attachments

Provide a name and continue.
attachments

Configure the service account access.
attachments

Click on the "Done" button.

Navigate to the newly created Service Account. Go to the KEYS tab. Click on the "Add KEY" button, and then select "Create new key".
attachments

Download the JSON file.
attachments

VFS configuration:

Username:google_jwt
Special user name for Service Account Access.
Password:<<the JSON file content>>
It authenticates based on the provided JSON file.
Provide the bucket and the path.
It is done! Test the connection and save it!
attachments

3. Access through S3 API
#


Generate Access key and Secret. Got to https://console.cloud.google.com/ In the left sidebar of the dashboard, click Google Cloud Storage and then Settings.
attachments
Select the Interoperability tab. If you haven't enabled it already, click on Interoperable Access. Now you should see an empty list and a Create New Key button. Click the button to create an Access/Secret key pair.

Google Cloud S3 VFS configuration:
1.
Domain:<<Cloud Storage -> Settings -> INTEROPERABILITY -> Domain of Storage URI default is storage.googleapis.com>>
Change the S3 default domain (s3.amazonaws.com) to the domain of Google Cloud Storage domain.
User name:<<Access Key>>
Password:<<Secret>>
Bucket:<<Google Cloud Storage Bucket Name>>
SHA256 enabled on signing (Signing Version 4):<<Enabled>>
!Warning Signing version 4 must be enabled, as Google Cloud Storage does not support older signing versions.

attachments
2. Select GStorage Item type.
Enable S3 API flag.

Domain:<<Cloud Storage -> Settings -> INTEROPERABILITY -> Domain of Storage URI default is storage.googleapis.com>>
Change the S3 default domain (s3.amazonaws.com) to the domain of Google Cloud Storage domain.
User name:<<Access Key>>
Password:<<Secret>>
Bucket:<<Google Cloud Storage Bucket Name>>
SHA256 enabled on signing (Signing Version 4):<<Enabled>>
!Warning Signing version 4 must be enabled, as Google Cloud Storage does not support older signing versions.

attachments

More info about s3 VFS configuration: S3 integration

Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
png
allow_form.png 100.3 kB 1 29-Dec-2020 05:25 krivacsz
png
bucket_and_test.png 250.0 kB 2 29-Dec-2020 05:25 krivacsz
png
clopud_storage_api_enable.png 47.1 kB 1 29-Dec-2020 05:25 krivacsz
png
cloud_storage_sttings.png 63.4 kB 1 10-Jul-2023 10:26 krivacsz
png
gstroage_s3_api_vfs_enabled.pn... 174.9 kB 1 12-Jul-2023 10:21 krivacsz
png
not_verified_domain.png 111.6 kB 1 29-Dec-2020 05:25 krivacsz
png
oauth_form.png 61.3 kB 1 29-Dec-2020 05:25 krivacsz
png
s3_vfs_settings.png 210.0 kB 1 10-Jul-2023 10:48 krivacsz
png
service_account.png 113.5 kB 1 10-Jul-2023 08:27 krivacsz
png
service_account_details.png 83.7 kB 1 10-Jul-2023 08:39 krivacsz
png
service_account_new_key.png 72.9 kB 1 10-Jul-2023 09:43 krivacsz
png
service_account_private_key.pn... 41.0 kB 1 10-Jul-2023 09:48 krivacsz
png
service_acount_vfs_test.png 130.7 kB 1 10-Jul-2023 10:02 krivacsz
png
storage_account_access.png 121.4 kB 1 10-Jul-2023 09:29 krivacsz
« This page (revision-55) was last changed on 12-Jul-2023 10:25 by krivacsz
G’day (anonymous guest)
CrushFTP10 | What's New

Referenced by
LeftMenu
S3 integration

JSPWiki