At line 6 changed one line |
__!!! Proxy Configuration:__ If your server accesses the internet through a proxy, make sure to whitelist the following domains for Google Authentication and Drive access:\\ |
---- |
__⚠️ Proxy Configuration:__ If your server accesses the internet through a proxy, make sure to whitelist the following domains for Google Authentication and Storage access:\\ |
At line 8 changed one line |
- __storage.googleapis.com__\\ |
- __storage.googleapis.com__\\ |
---- |
At line 11 changed one line |
__!!!Note:__ Ensure the __Cloud Storage__ is enabled at __Enabled APIs & services__. [Google API Library Link|https://console.cloud.google.com/apis/library]\\ |
__⚠️ Important:__ Ensure the __Cloud Storage__ is enabled at __Enabled APIs & services__. [Google API Library Link|https://console.cloud.google.com/apis/library]\\ |
At line 21 changed one line |
Select the application type: __Web application__. Provide a unique name. Then, configure the __Authorized redirect URI__—this is where Google will redirect you after authorization. The Redirect URL must end with __?command=register_gdrive_api__.\\ |
• Select the application type: __Web application__.\\ |
• Provide a unique name to identify your OAuth client (e.g., CrushFTP Integration).\\ |
Then configure the following:\\ |
• __Authorized JavaScript origins__: Add the base URL of your CrushFTP server (e.g., https://your-domain.com).\\ |
• __Authorized redirect URIs__: This is the URL Google will redirect to after successful authorization. The Redirect URL must end with __?command=register_gdrive_api__\\ |
At line 26 changed 4 lines |
}}}\\ |
or |
{{{ |
|
or |
At line 31 removed one line |
|
At line 35 added one line |
\\ |
At line 41 changed one line |
__!!! Note:__ You can configure the __OAuth consent screen__ by clicking the link above the __Authorized JavaScript origins__ section:\\ |
__⚠️ Note:__ You can configure the __OAuth consent screen__ by clicking the link above the __Authorized JavaScript origins__ section:\\ |
At line 44 changed 3 lines |
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.\\ |
__Important__: After configuration, don’t forget to click __Publish App__ at __Audience__ page to make it active. Without publishing, the app will remain in __Testing__ mode, which restricts access to authorized test users only.\\ |
At line 48 changed one line |
[attachments|oauth_form.png]\\ |
__GStorage Remote Item Settings__:\\ |
At line 50 changed one line |
If your domain is not verified you will get a warning message, click on Advanced and proceed further:\\ |
Select the __GStorage__ item type and click the __Get Refresh Token__ button. |
At line 52 changed one line |
[attachments|not_verified_domain.png]\\ |
__⚠️ Important__: To obtain the __Refresh Token__, the CrushFTP WebInterface’s host and port must match the __Redirect URL__ specified in the __Google APIs & Services__-> __Credentials__ -> __OAuth 2.0 Client IDs__. In our example, it was: http://127.0.0.1:9090 or https://your.crushftp.domain.com/\\ |
At line 54 changed one line |
Click on allow:\\ |
Enter the __Client ID__ , __Client Secret__. Proceed with the authentication and authorization process.\\ |
__⚠️ Important__: Be sure to sign in with the __Google Account__ that has the __necessary permissions__, as configured in the __Google APIs & Services__-> __Credentials__ -> __OAuth 2.0 Client IDs__. This will automatically configure the __User name__ and __Password__.\\ |
[GDriveSetup/gdrive_oauth_form.png]\\ |
At line 56 changed one line |
[attachments|allow_form.png]\\ |
If the domain is unverified, a warning message may appear. Click __Advanced__ and choose to proceed:\\ |
At line 58 changed 3 lines |
The refresh token will be saved as password.\\ |
Provide the bucket and the path.\\ |
It is done! Test the connection and save it!\\ |
[SMTP Google Mail Integration/not_verified_domain.png]\\ |
\\ |
Click on the __Allow__ button:\\ |
\\ |
[SMTP Google Mail Integration/allow_form.png]\\ |
\\ |
Provide the __Google Storage Bucket__ and the path.\\ |
\\ |
At line 74 changed one line |
Click on the "Done" button.\\ |
Click on the __Done__ button.\\ |
At line 76 changed one line |
Navigate to the newly created Service Account. Go to the KEYS tab. Click on the "Add KEY" button, and then select "Create new key".\\ |
Navigate to the newly created __Service Account__. Go to the __KEYS__ tab. Click on the __Add KEY__ button, and then select __Create new key__.\\ |
At line 84 changed 4 lines |
Username:__google_jwt__\\ |
Special user name for Service Account Access.\\ |
Password:__<<the JSON file content>>__\\ |
It authenticates based on the provided JSON file.\\ |
Username: __google_jwt__ -> Special user name for Service Account Access.\\ |
Password: __<<the JSON file content>>__ -> It authenticates based on the provided JSON file.\\ |
At line 98 added one line |
---- |
At line 94 changed one line |
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.\\ |
Generate __Access key__ and __Secret__. Got to [Google Console Cloud Link|https://console.cloud.google.com/] In the left sidebar of the dashboard, click on the __Google Cloud Storage__ and then __Settings__.\\ |
At line 100 changed one line |
\\Domain:<<Cloud Storage -> Settings -> INTEROPERABILITY -> Domain of __Storage URI__ default is __storage.googleapis.com__>> \\ |
\\Domain: <<Cloud Storage -> Settings -> INTEROPERABILITY -> Domain of __Storage URI__ default is __storage.googleapis.com__>>\\ |
At line 109 added one line |
\\ |
At line 111 added one line |
\\ |
At line 113 added one line |
\\ |
At line 115 added one line |
\\\ |
At line 106 changed one line |
__!Warning__ Signing version 4 must be enabled, as Google Cloud Storage does not support older signing versions.\\ |
__⚠️__ __Signing version 4__ must be enabled, as Google Cloud Storage does not support older signing versions.\\ |
At line 114 changed 3 lines |
User name:__<<Access Key>>__\\ |
Password:__<<Secret>>__\\ |
Bucket:__<<Google Cloud Storage Bucket Name>>__\\ |
User name: __<<Access Key>>__\\ |
Password: __<<Secret>>__\\ |
Bucket: __<<Google Cloud Storage Bucket Name>>__\\ |
At line 118 changed one line |
__!Warning__ Signing version 4 must be enabled, as Google Cloud Storage does not support older signing versions.\\ |
__⚠️__ __Signing version 4__ must be enabled, as __Google Cloud Storage__ does not support older signing versions.\\ |