How to Share Files from Google Cloud Object Storage (GCP)
Google Cloud Storage is the object storage service offered by Google Cloud to store large amounts of data. In this document, we will discuss how to install NirvaShare and share files/folders from Google object storage with external users using a simple Form-based authentication. NirvaShare can be installed in Linux operating system and has advanced features to integrate with external identity providers. In this tutorial, we shall consider Linux Ubuntu operating system with a simple Form-based authentication while sharing files from object storage that uses HTTP without SSL certificate. Subsequently, you can enable SSL using your custom domain name and certificate. For more information check Google Documentation.
VM instance
For VM instance creation, you will require a new Virtual Machine instance. To know about the hardware and OS requirements for the Virtual Machine Instance you can refer to the document
The below steps will help you to create a Virtual Instance and configure the same.
- Login to https://console.cloud.google.com
- Go to Compute Engine – VM instances
- Click on CREATE INSTANCE
- Provide required details including hardware specification.
- For the Boot disk, you should select the operating system Ubuntu 20.04 LTS
- Create the VM instance.
- For more information you can also refer to Google Documentation.
Once the VM instance is created, we have to open couple of ports for NirvaShare. For this, let us create a new firewall rule.
- From the main menu, click on VPC Network and select Firewall.
- Click on CREATE FIREWALL RULE.
- Provide name and target tags as nirvashare-firewall
- For Source IP range, enter 0.0.0.0/0 to let access from all source IP addresses.
- For Protocols and ports, select Specified protocols and ports.
- Enter ports as 8080, 8081 and create it
Now, we have to open the ports for the newly created VM instance by changing the firewall policy.
- Go to Compute Engine – VM instances or open https://console.cloud.google.com/compute/instances
- Click on the VM instance that we created.
- Click on EDIT button.
- For the Network Tags, enter nirvashare-firewall and Save it.
NirvaShare Installation
Before you begin to share files from Google storage you should ensure that NirvaShare is installed in the newly created VM environment . Please refer to below documentation for the installation of NirvaShare in your VM.
Storage Configuration
It is essential to configure the object storage with NirvaShare to share files from Google Cloud Object Storage. Refer to the below document for storage configuration.
Login Profile for Form based Authentication
To securely share a file or folder with password protection, the first step is to create a login profile in NirvaShare which can further make it possible to authenticate the shares. You can create a simple Form based login profile (Single User) using the procedure provided in the following document.
Sharing a File/Folder
Once the above mentioned steps are carried out successfully we can start sharing files/folders with a user based on the Login Profile created in the above section. Multiple Shares can also be created for the same login profile. Let us begin by creating a Share for a folder that we would like to share with the user. Please refer to the below documentation on how to create a new share for a file/folder, associate it to a login profile, and share the same with the user. During the configuration, for the authentication, please select the login profile that we created in the above section.
Verification
- Copy the Shareable Link from the Shares in NirvaShare Admin Console.
- Open the link in browser tab. This will redirect to Form based authentication
- After the authentication, you will be able to access Shares assigned to the login profile.