Když zaregistrujete aplikaci Microsoft Entra, udělíte jí oprávnění pro přístup k různým rozhraním API. Vzhledem k tomu, že se vaše potřeby mění, můžete tato oprávnění upravit. V tomto článku se dozvíte, jak na to.
Poznámka:
Oprávnění aplikace Microsoft Entra platí jenom pro tyto scénáře:
Vložení pro vaši organizaci
Vložení pro zákazníky pomocí hlavní metody ověřování uživatelů
Úprava nastavení oprávnění v aplikaci Microsoft Entra
Změny oprávnění je možné provádět prostřednictvím kódu programu nebo na webu Azure Portal.
Vyberte svého tenanta Microsoft Entra tak, že v pravém horním rohu stránky vyberete svůj účet.
Vyberte Registrace aplikací. Pokud tuto možnost nevidíte, vyhledejte ji.
Na kartě Vlastněné aplikace vyberte svou aplikaci. Aplikace se otevře na kartě Přehled , kde můžete zkontrolovat ID aplikace.
Vyberte kartu Zobrazit oprávnění rozhraní API.
Vyberte Přidat oprávnění.
Pokud chcete přidat oprávnění, postupujte podle těchto kroků (všimněte si, že první krok se u aplikací GCC liší):
Na kartě Rozhraní API Microsoftu vyberte služba Power BI.
Poznámka:
V případě aplikací GCC vyberte rozhraní API, která moje organizace používá , a vyhledejte microsoft Power BI Government Community Cloud NEBO fc4979e5-0aa5-429f-b13a-5d1365be566.
Vyberte Delegovaná oprávnění a přidejte nebo odeberte potřebná oprávnění.
Až budete hotovi, vyberte Přidat oprávnění k uložení změn.
Pokud chcete oprávnění odebrat, postupujte takto:
Vpravo od oprávnění vyberte tři tečky (...).
Vyberte Odebrat oprávnění.
V automaticky otevíraných otevíraných okně Odebrat oprávnění vyberte Ano , odebrat.
Pokud chcete oprávnění aplikace Microsoft Entra změnit programově, budete muset získat stávající instanční objekty (uživatele) v rámci vašeho tenanta. Informace o tom, jak to udělat, najdete v tématu servicePrincipal.
Pokud chcete získat všechny instanční objekty ve vašem tenantovi, zavolejte Get servicePrincipal rozhraní API bez {ID}.
Vyhledejte instanční objekt s ID aplikace jako appId vlastností. (displayName je nepovinný.)
Udělte aplikaci oprávnění Power BI tím, že přiřadíte jednu z těchto hodnot:consentType
AllPrincipals – Správce Power BI může používat jenom k udělení oprávnění jménem všech uživatelů v tenantovi.
Principal – Slouží k udělení oprávnění jménem konkrétního uživatele. Pokud používáte tuto možnost, přidejte principalId={User_ObjectId} vlastnost do textu požadavku.
Pokud používáte hlavního uživatele, abyste se vyhnuli zobrazení výzvy k vyjádření souhlasu s ID Microsoft Entra, musíte udělit oprávnění hlavnímu účtu.
C78a3685-1ce7-52cd-95f7-dc5aea8ec98e resourceId je závislý na tenantovi a není univerzální. Tato hodnota je objectIdaplikace služby Power BI v Microsoft Entra ID. Pokud chcete tuto hodnotu získat z webu Azure Portal, přejděte do podnikových aplikací > Všechny aplikace a vyhledejte službu Power BI.
Udělte aplikaci oprávnění k ID Microsoft Entra tím, že přiřadíte hodnotu .consentType
Oprávnění aplikace Microsoft Entra můžete také změnit pomocí jazyka C#. Další informace najdete v rozhraní API oAuth2PermissionGrant . Tato metoda může být užitečná, pokud zvažujete automatizaci některých procesů.
var graphClient = GetGraphClient();
currentState.createdApp = await graphClient.Applications
.Request()
.AddAsync(application);
System.Threading.Thread.Sleep(2000);
var passwordCredential = new PasswordCredential
{
DisplayName = "Client Secret Created in C#"
};
currentState.createdSecret = await graphClient.Applications[currentState.createdApp.Id]
.AddPassword(passwordCredential)
.Request()
.PostAsync();
var servicePrincipal = new ServicePrincipal
{
AppId = currentState.createdApp.AppId
};
currentState.createdServicePrincipal = await graphClient.ServicePrincipals
.Request()
.AddAsync(servicePrincipal);
GraphServiceClient graphClient = new GraphServiceClient(authProvider);
// Use oAuth2PermissionGrant to change permissions
var oAuth2PermissionGrant = await graphClient.Oauth2PermissionGrants["{id}"]
.Request()
.GetAsync();