Try Live Demo

For some time we have been getting a lot of requests to be able to run Ant Media Server and manage several customers at once. This would allow creating several users, each having their own set of applications, without being able to see each others’ data. The answer is multi-tenancy.

The good news is that after careful planning, we have decided to provide this feature support to Ant Media Server users. In this blog post, we’ll mention:

  • What is Ant Media Server (AMS) multi-tenancy feature?
  • Why multi-tenancy is important for businesses?
  • 3 use-cases about multi-tenancy
  • Using multi-tenancy in Ant Media Server

What does multi-tenancy mean for Ant Media Server users?

It means that a single AMS Instance infrastructure serves multiple customers. Each customer uses their own application. Each tenant’s application is isolated and remains invisible to other tenants.

Multitasking GIF - Find & Share on GIPHY

Why is multi-tenancy important?

Let’s assume that you have a lot of clients and you need to provide a live streaming solution. The traditional strategy is to create an AMS for each client. This is not the most efficient strategy for businesses. It would need quite a lot of management and be costly in terms of running the business.

Multi-tenancy provides a solution for the best efficiency. This way, there is no need to create an AMS instance for each client. Instead, you just use one AMS for each client. It’s a cost-effective and smart solution.

That’s why multi-tenancy is important for businesses.

Think About It GIF by Identity - Find & Share on GIPHY

3 use-cases about multi-tenancy

We’re going to explain how it makes sense in a traditional Ant Media Server deployment with 3 sample use cases.

1. Using multi-tenancy in datacenters

In order to serve a SaaS solution, businesses prefer using a simple method. The multi-Tenant solution completely covers Datacenter requirements. No need to spend a lot on development costs. It can be added with just one REST API.

2. Using multi-tenancy in IP camera companies

I know that security is the most important thing for IP cameras. When you use multi-tenancy in your structure, you will permit your access and you will protect the streams.

3. Using multi-tenancy in auction/bidding companies

Speed is critical for auction/bidding sectors. If you want to build a streaming structure for your clients, you can create a user for your client with just one click.

How to use it in Ant Media Server

Ant Media Server supports different user roles. You can, for example, create an admin user to virtually do everything for read-only users, who only can view the dashboard and not do something harmful like removing an application. These permission models are both in API and Ant Media administration tools.

User Roles:

AMS dashboard users can only view applications and sections of the dashboard they have been given access. There are 3 types of user access in the AMS dashboard:

  • Admin can do anything in its scope, e.g can CRUD anything and access all web panel services.
  • User can do anything in the dashboard for particular applications granted. He cannot see or modify other applications.
  • Read-only user can read anything in the dashboard for applications granted. This user cannot access web panel services, create an application, or start a broadcast.

Creating user roles in AMS

In order to create a user role, navigate to Settings on the left menu. Here, click the Users section and click the New User button. Just fill in the blanks according to your use case.

multi-tenancy-create-user

After logging in with your new user, you will see likely as below:

specific-application-admin-user-dashboard

Multi-tenancy is also supported by AMS APIs, just like the way all panel actions are supported with APIs. You can check GitHub for technical details.

References

  • https://digitalguardian.com/blog/saas-single-tenant-vs-multi-tenant-whats-difference

For any questions about Ant Media Server, please feel free to contact us via contact@antmedia.io

Categories: Tutorial

Selim Emre Toy

Highly motivated full-stack developer with 6 years of experience especially in Java and Angular. Constantly learning, passionate about solving complex problems. Proficient in various programming languages and technologies. Enjoys finding creative solutions to challenges.