How to Share Files and Manage Access to MinIO Storage
MinIO offers high-performance, S3 compatible object storage. MinIO is software-defined and is 100% open source under GNU AGPL v3. In this document, we will discuss how to install NirvaShare and share files/folders from Minio object storage with external users using a simple form-based authentication. NirvaShare can be installed in any operating system and has advanced features to integrate with external identity providers, but in this tutorial, we shall consider Linux Ubuntu operating system with a simple form-based authentication while sharing files from object storage. You can create a virtual machine in any of the cloud platforms or on-premise.
As a prerequisite, make sure you have access to MinIO Storage account with admin rights.
Installation
Make sure you have a virtual machine in any of the cloud platforms or on-premise having operating system with Linux Ubuntu 20.04. Refer to below documentation on how to install NirvaShare on a Ubuntu box.
Storage Credentials
Application API keys from your MinIO account are required to configure NirvaShare for storage. To create application keys, follow the steps below.
- Login to MinIO account
- From the left menu list, click on Identity and then on Service Accounts
- From the top right corner, click on Create Service Account


- To create service account, click on Create

- This will generate new keys, copy the Access Key and Secret Key
*Important: Please note down these keys, it will be required during the configuration.
Configuration
With the installation being ready and having both access and secret keys, the next step is to configure NirvaShare to point to your MinIO storage and then share file/folder using a Form-based authentication.
Assuming, deployment was successful, please open the Admin Console URL -> http://(your ip):8080

Login to admin console with default credentials as admin/admin . It is advisable to change the password after your first login. To change the password, please refer to the documentation Change Password. You can also create more than one admin user under Users & Roles -> Admin Users tab and make sure to give full access to the user. To reset another admin user password refer to Password Reset.
NOTE: Please note that the default in-built user store does not support password reset functionality for AdminConsole. For a proper production deployment, you can integrate with any of your identity stores such as keycloak, Active Directory, etc for better password management policy.
- After login into the application, click on Settings at the left menu tab.
- Click on edit File Storage, select a storage type as MinIO and provide your storage Access Key and Secret Key along with end point URL
- Save it.
- Go to the next section, edit User Application URL and provide the user application URL as http://(you ip):8081, and save it.
Note – During production use, a proper domain with HTTPS is required here. - Other settings such as email, audit, etc can be configured later and is optional for now. For more detail, refer to Settings

File Sharing with Form based Authentication
To Share a folder with form based Authentication, please refer to Setup Form based Authentication.