What is the difference between IAM and Azure AD on the azure cloud? - azure

What is the difference between IAM and Azure AD on the azure cloud?
They don't make it clear.

Identity Access Management is what they call the Role-Based Access Control system in Azure subscriptions. Basically, it allows you to give users certain roles on subscriptions, resource groups, or individual resources.
Azure AD is a more general identity management solution. It allows you to manage users and applications, users' access to those applications and more. Calling it the "same as on-prem AD" is not really quite right, since their features differ quite a lot. The general purpose is similar to on-prem AD of course.
Logically Azure subscriptions exist within one Azure AD (they are linked to one). But having your user account in Azure AD does not give you access to Azure subscriptions! In addition to a user having to be a member (or invited guest user) of the AAD assigned to the subscription, you also have to use the RBAC (IAM) system to assign roles for users.

Azure AD is for Authentiction - User must prove who they are using a Username and Password
IAM (RBAC) is for Authorization - a User is assigned a role or permissions to use a specific resource.

What is the difference between IAM and Azure AD on the azure cloud?
Azure IAM is Azure Role-Based Access control (RBAC). Work for Azure subscription, to manage Azure resources.
Using RBAC, you can segregate duties within your team and grant only
the amount of access to users that they need to perform their jobs.
Instead of giving everybody unrestricted permissions in your Azure
subscription or resources, you can allow only certain actions. For
example, use RBAC to let one employee manage virtual machines in a
subscription, while another can manage SQL databases within the same
subscription.
Azure AD same as on-prem AD, create users to access or manage some applications.
Azure IAM same as Active directory group(have some permissions), Azure AD users in this group will have those permissions.

Identify and access management (IAM) is called RBAC (Role-Based Access Control). This is used to grant level of access such as reader , contributor , owner to Azure resources and hence perform role assignment.
Azure AD is identity management solution for Azure. It is a live directory or a database that stores the user accounts and their password.

Related

Azure - Restrict Role Assignments to Managed Identities and Service Principals

Our Azure engineers need to be able to manage the identity and permissions used to run the software they deploy to the cloud.
However, granting them the ability to assign RBAC roles also allows them to assign permissions for any AD User or Group--not just system identities (Managed Identities, Service Principals).
How can I configure Azure to allow engineers to grant permissiona for their software to operate but prevent them from granting permissions to other AD entities?
Currently is not possible to limit the scope or selection of principals (users or services/applications) to be assigned roles. Usually, developers are given up to the Contributor role which give them access to almost all management features but user access while selected users are given the User Access Administrator role.

Cannot set Azure Active Directory Admin in Azure SQL Database

I cannot set Azure Active Directory Admin in Azure SQL Database for myself.
attached pic
To set the as the Azure Active Directory Admin in the Azure SQL Server : You have to have the Owner role or the Contributor:
As, Azure AD is nothing but an identity store in Azure. Here we can
define users, groups, applications, and service principles. These
users can authenticate onto Azure and they can access resources that
are part of Azure subscription.
We can assign Azure AD roles to a user and these permissions are
normally given to manage the various aspects of Azure AD.
Role-based access control (RBAC), on the other hand, is used to authorise a user to use Azure resources. ​
For example, you might grant a user the ability to create a storage
account or manage resource groups by assigning them a role.
At the management group, subscription, resource group, or resource level, role-based access control can be implemented.
RBAC has three basic roles that apply to all resource types:
Owner: This role has full access to all the resources and can delegate
access to others.
Contributor: This role can create and manage all types of resources,
but can’t grant access to other users and groups.
Reader: This role can view existing Azure resources.
Here, is the way I am able to add, as the assigned role to me is Contributor Role.
Once you have the Owner or Contributor Role you will be able to add the Azure Active Directory Admin for the SQL server:

Azure resource access management and its relation with tenant

Azure ARM handles identity requirements for the requests it receives through Azure AD. The requesting user should be a valid Azure AD user with a valid identity and authorization roles. The azure subscription for which the request is made should comply to deployment limits and biling policies.
There is a role of Azure Tenant that is associated with requesting user and Subscription. What role these tenants play and what is the workflow ?
I'm not sure what you mean exactly by the role of the Azure tenant in this context, but you can assign roles at the tenant scope and that's what the ARM template documentation describes. For example, you can assign an Owner role to a user at the tenant scope so that the user is an Owner of the tenant. As for the relationship between tenants and subscriptions, multiple subscriptions can trust the same Azure AD tenant, but each subscription can only trust a single tenant. You can associate a subscription with a tenant by logging in and selecting the Subscription, and then changing the directory. With a Global Admin or User Admin role, you can add or remove users from your tenant.
As I'm sure you already know, an Azure tenant is a dedicated and trusted instance of Azure AD. Typically, each tenant represents a single organization. The words "tenant" and "directory" are used interchangeably. The tenant is an account in Azure that comes with a subdomain and an associated Azure Active Directory. In order to use an Azure Active Directory you need to become a tenant within the system. So a tenant is basically securing a .onmicrosoft.com subdomain. At that point you would have one account registered in your Azure AD.
So in the context of the ARM template, you need an Azure tenant to house your users and link to your subscriptions.
A tenant represents an organization in Azure Active Directory. It's a dedicated Azure AD service instance that an organization receives and owns when it signs up for a Microsoft cloud service such as Azure, Microsoft Intune, or Microsoft 365. Each Azure AD tenant is distinct and separate from other Azure AD tenants. Once you have an Azure AD tenant, you can define an application and assign it permissions so it can call REST APIs. Your organization may already have an Azure AD tenant that you can use for your application.
In Azure AD, users are segmented into tenants. A tenant is a logical construct that represents a secure, dedicated instance of Azure AD typically associated with an organization. Each subscription is associated with an Azure AD tenant. Next, the ARM checks whether the user has sufficient permission to access a resource using Azure RBAC (Role based Access Control) which manages the permissions. An Azure role specifies a set of permissions a user may take on a specific resource. Next, the resource request is checked against an Azure Resource Policy which are defined to allow specific operations for a specific resource. Next, ARM checks the Azure subscription limit for the specific resources in that subscription for resource groups. And finally, the financial commitment associated with the subscription is checked as a final control before deploying the resource for management through the ARM.
ARM flow and working
Please find the below Microsoft documentation for your reference: -
https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/govern/resource-consistency/resource-access-management
Thanking you,

Azure AD share Managed Service Identities across tenants/subscriptions

Azure AD have B2B collaboration for inviting external users.
But what if i wan't to invite an external Azure service that have a MSI.
Is it possible to create an Azure AD group and add a external(another subscription/tenant in Azure) MSI which i can then use to grant access to resources?
Say I wan't to allow a B2B partners Data Factory access to SQL database of ours and I do not wan't to give them a SQL Login.
MSIs are service principals which cannot be invited to other tenants. They are always tenant-specific.
The scenario sounds like you need to give access to something connected to your tenant.
I would suggest creating an App registration (Application),
adding a key, and giving those credentials to the other service.
You can then give the application access to your Azure subscription etc.

How I can select a specific AD in IAM menu

When I select an IAM menu (Identity + Acces Management) I see a list of user accounts extracted from my Azure AD
But I have several AD.From what criteria Azure select an AD rather another one?
Hi assuming your question is that you have multiple Azure Active Directories, rather than multiple on-prem ADs that you need to sync - then via the preview management blades in the new portal can you change which Direcotry they list via the icon on the top right which shows your logged in user. From there simply select the Directory you wish to manage.
It is only able to grant the access to the users in the Azure Active Directory which the Azure subscription trust. It is not able to switch the Azure Active Directory to grant the access.
Each Azure subscription is associated with one Azure Active Directory (AD) directory. Users, groups, and applications from that directory can manage resources in the Azure subscription. Assign these access rights using the Azure portal, Azure command-line tools, and Azure Management APIs.
Grant access by assigning the appropriate RBAC role to users, groups, and applications at a certain scope. The scope of a role assignment can be a subscription, a resource group, or a single resource. A role assigned at a parent scope also grants access to the children contained within it. For example, a user with access to a resource group can manage all the resources it contains, like websites, virtual machines, and subnets.
The RBAC role that you assign dictates what resources the user, group, or application can manage within that scope.
Here are some helpful articles about Role-based access control and Azure subscription:
How Azure subscriptions are associated with Azure Active Directory
Get started with access management in the Azure portal
Use role assignments to manage access to your Azure subscription resources

Resources