Microsoft Azure Administrator AZ-104 Exam Prep
Azure Identity Management
Managing Who Gets In
When you build something in the cloud, you need a way to control who can access it. Think of it like a digital bouncer for your applications and data. In Azure, this bouncer is called Microsoft Entra ID. It's the central hub for managing user identities and ensuring the right people have the right level of access to the right resources.
Microsoft Entra ID
noun
A cloud-based identity and access management service from Microsoft. It helps employees sign in and access resources, both in the cloud and on internal networks.
At its core, identity management is about two things: users and groups. A user is a single identity, like an employee, a contractor, or even an automated service, that needs access. A group is simply a collection of users. Groups make life much easier. Instead of giving permissions to twenty people one by one, you can put them all in a group and assign permissions to the group itself. If someone leaves the team, you just remove them from the group, and their access is instantly revoked.
Assigning Permissions with Roles
Once you have users and groups, how do you specify what they can actually do? You don't want your marketing intern to have the ability to delete a critical database. This is where Role-Based Access Control, or RBAC, comes in. RBAC works by assigning roles to users or groups, and each role comes with a specific set of permissions.
The guiding principle of RBAC is the 'principle of least privilege': give users only the access they need to perform their jobs, and no more.
Azure has many built-in roles. The three most common ones you'll encounter are:
- Owner: Has full access to manage everything, including the ability to give access to others.
- Contributor: Can create and manage all types of Azure resources, but can't grant access to others.
- Reader: Can view existing Azure resources, but can't change them.
Critically, you don't just assign a role. You assign it at a specific scope. This determines which resources the permissions apply to. Think of it like a hierarchy.
If you make someone an Owner at the Subscription level, they are automatically an Owner for all the Resource Groups and Resources within that subscription. This inheritance makes managing permissions efficient, but it also means you should always assign roles at the lowest possible scope that still gets the job done.
Organizing and Protecting Resources
Beyond controlling who can do what, Azure provides tools to help you organize your resources and protect them from accidental mistakes. Two of the most important governance features are resource locks and tags.
Resource Locks are like putting a digital padlock on your most important services. They prevent users—even Owners—from accidentally deleting or modifying critical resources. There are two types of locks:
- CanNotDelete: Users can still read and modify a resource, but they can't delete it.
- ReadOnly: Users can only read a resource. They can't modify or delete it.
Tags are simple key-value pairs of metadata that you can apply to your Azure resources. They don't affect how the resources run, but they are incredibly powerful for organization. You can use tags to categorize resources by department, environment (like 'Production' or 'Development'), or project. This makes it easy to track costs and manage resources that belong together, even if they're in different resource groups.
| Tag Key | Tag Value | Purpose |
|---|---|---|
environment | production | Identifies critical production services. |
cost-center | FIN-1024 | Assigns the resource's cost to the Finance department. |
project-name | WebApp-Alpha | Groups all resources related to a specific project. |
owner | jane.doe | Specifies the person responsible for the resource. |
By mastering users, groups, roles, locks, and tags, you create a secure and well-organized foundation for everything you build in Azure.
A new developer on your team needs to deploy and manage Azure resources for a project. However, according to company policy, they should not be able to grant access to other users. Which built-in RBAC role is most appropriate for this developer?
What is the primary purpose of applying a 'CanNotDelete' resource lock to a critical production database?
