Power BI Guest users - azure-active-directory

We have an Azure AD Tenant and External users from different organizations are added as Guest in this tenant.
When sharing content with other users, Guest users from different organization can see each other. Is there a way to prevent this enumeration? I see that a new Feature is comming wherin Guest user cannot be #mentioned

Try to set guest user access is restricted to properties and memberships of their own directory objects. This restriction level is the highest. When guests are restricted, they can only view their own user profiles but not other users. See: restrict guest user access.
Log in to the Azure portal as an administrator, go to User settings>Manage external collaboration settings>Select Guest user access is restricted to properties and memberships of their own directory objects (most restrictive)

Related

Azure B2C - granting access to multiple “application tenants”

I am building an application which will use Azure B2C as the identity system. It will include some local accounts, and some federated accounts for Enterprise SSO logins.
The application will have “application tenants”, representing customer organization/company.
I’d like a user to be able to grant users access to one or more application tenants (in case some users will manage multiple company accounts within the app).
There will also be multiple roles within the app (e.g. read only, full admin).
What is the recommended way to map a B2C User to “app tenants” and roles?
Create AAD group per tenant and role and check membership?
Custom attribute for tenantid(s)?
Or must I map users to tenants & roles in app DB/ outside of B2C?
Is this scenario described in any docs that might point me in the right direction?
Thanks!

Hierarchical RBAC system for Azure Active Directory

I'm looking for a hierarchical RBAC system to be used with Azure Active Directory accounts.
With the hierarchical RBAC system I would like to authorize users to have access and be in roles in a hierarchical structure, e.g.:
Customer 1
role: finance - user G
Shopping mole A
Shop X
role: admin - user U
role: security - user U, user V
role: access - user U, user K, user L
role: finance - user L, user N
Shop Y
role: admin - user Q
...
Customer 2
...
Note that a user could be in a different role for shop X and shop Y.
Any pointers to such a system/library?
• The way you want to use the hierarchical RBAC permissions for the Azure Active Directory accounts in your scenario can be achieved by leveraging the managed identity feature of Identity and Access Management. Through the system assigned managed identity, you can create an identity for the Azure resource that you want to deploy and manage with the user that is assigned to it.
Similarly, if you create a user assigned managed identity for a user, then that user can be assigned varied levels of permissions and privileges relative to the Azure resources that you want to deploy and use such that the same identity can have different permissions and roles for a resource deployed for a particular management group while that same identity assigned to that user can have different permissions and roles for another Aure resource.
• Thus, with regards to Azure AD, there is no such hierarchical system designed as in on-premises Active Directory but the RBAC system in Azure AD is quite robust and useful if used on an optimum basis. As when you said that you want the same user to perform roles in different business units, you can use the user assigned managed identity to a good affect as it will leverage the different RBAC permissions for the same user based on a created and managed identity by Azure that is linked to it thus thereby successfully keeping the user’s original identity discreet and ensuring the RBAC permissions are applied.
For more information, you can surely refer to the documentation link below: -
https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview

Azure Active Directory: "user administrator" can not delete users if assigned to administrative unit

I have created some limited administrators in my Azure Active Directory. These should only be able to manage certain users. For this I added the users that should be managed to an administative unit and gave the administrators the "User Adminsitrator" role for the administrative unit. They can now edit/ manage all aspects of the users as intended. However, they cannot delete the users.
This should be possible. Here is the description of the user administrator role from Microsoft:
"Users with this role can create and manage all aspects of users and
groups. Additionally, this role includes the ability to manage support
tickets and monitors service health. Some restrictions apply. For
example, this role does not allow deleting a global administrator.
User account administrators can change passwords for users, helpdesk
administrators, and other user account administrators only".
The users in the administrative unit are of course not administrators.
If I assign the administrators the "user administrator" role for the whole AAD tenant, then they can delete users.
Here Microsoft also clearly describes that with this role you should have the right to delete users: https://learn.microsoft.com/de-de/azure/active-directory/roles/permissions-reference#user-administrator
Does anyone understand why this role does not work properly anymore if you assign it to an administrative unit?
Thanks in advance
The user administrator in a Administrative unit can manage all aspects of users and groups, and of course it also includes removing users from the Administrative unit.
However, it cannot delete the user within the scope of the tenant, because the user is created within the scope of the tenant, but the scope of the granted user administrator is limited to one or more Administrative units.
In addition, you only added the user in the Administrative unit instead of creating the user in the Administrative unit, so you definitely cannot delete the user in the tenant scope. Therefore, if you want to delete the user in the tenant scope, you can only grant the user the user administrator role within the tenant scope.
You have to be a Privileged Role Administrator or Global Administrator to add or remove administrative unit members (source).
User Administrator at the Directory level is not sufficient. Custom roles might be another option.
Creating and deleting users in the Directory is a different scope.

modify permissions of global administrator using graph explorer

I used Graph explorer->Logged in with Global administrator -> Modify Permissions-> chose User.ReadWriteAll,Group.ReadWriteAll,Directory.AccessAsUser.All and then select "access to your entire organization" and logged in again with global administrator
I get below error.
Selected user account does not exist in tenant 'Microsoft' and cannot
access the application 'de8bc8b5-d9f9-48b1-a8ad-b748da725064' in that
tenant. The account needs to be added as an external user in the
tenant first. Please use a different account.
How can I add permissions to global administrator user?
Since your account is a guest in the tenant, you could not use the account to query the tenant, even if you are a global admin.
For more details, refer to this post.
Credentials are only owned by a single tenant. The tenant is discovered by Graph Explorer based on domain. You cannot use Graph Explorer to query tenants your account is a guest on, it can only query the tenant that owns the account. The only way to use those creds with another tenant would be to force the OAuth uri to use that tenants ID instead of "common". This isn't supported by Explorer. You'd have to download the source an reengineer the auth process

Azure AD: how to grant permission for all users within my AD tenet

I am not an admin of my azure active directory. Currently my web api application will able to read directory data when I or any user manually going to azure portal and click `Grant Permissions'.
I set Read directory data under DELEGATED PERMISSIONS.
But, I can't go to to each user and ask for same. Is there any way to do this at once for all users of my AD tenet? Thanks!
Because you are not an admin, no you cannot grant permissions on behalf of any other users. The most you can do is grant the application permissions equal to what your user can do, which is what the "Access the directory as the signed-in user" permission does.
However, depending on the data you are trying to read, you may be able to access that data without needing other users to consent. For example, any user has the ability to grant the application the ability to read basic information about all other users in the tenant. You will need to elaborate on your scenario.

Resources