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
Minio storage configuration 1
Minio storage configuration 2.1
  • To create service account, click on Create
Minio storage configuration 3 flash no board
  • 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

loginForm

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
nirvashare minio storage configuration 5

File Sharing with Form based Authentication

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