Power BI-tartalom beágyazása szolgáltatásnévvel és alkalmazás titkos kóddal
A szolgáltatásnév egy hitelesítési módszer, amellyel a Microsoft Entra-alkalmazások hozzáférhetnek Power BI szolgáltatás tartalmakhoz és API-khoz.
Microsoft Entra-alkalmazás létrehozásakor létrejön egy egyszerű szolgáltatásobjektum . A szolgáltatásnév objektum, más néven egyszerű szolgáltatásnév lehetővé teszi, hogy a Microsoft Entra ID hitelesítse az alkalmazást. A hitelesítés után az alkalmazás hozzáférhet a Microsoft Entra bérlői erőforrásaihoz.
A hitelesítéshez a szolgáltatásnév a Microsoft Entra alkalmazásazonosítóját és az alábbiak egyikét használja:
- Tanúsítvány
- Alkalmazás titkos kódja
Ez a cikk egy alkalmazásazonosítót és egy alkalmazáskulcsot használó egyszerű szolgáltatáshitelesítést ismertet.
Megjegyzés:
Javasoljuk, hogy titkos kulcsok helyett tanúsítványokkal biztosítsa a háttérszolgáltatásokat.
- További információ a hozzáférési jogkivonatok Microsoft Entra-azonosítóból való lekéréséről titkos kulcsok vagy tanúsítványok használatával.
- Ha tanúsítvány használatával szeretné biztonságossá tenni a megoldást, végezze el az ebben a cikkben ismertetett utasításokat, majd kövesse a Power BI-tartalom beágyazása szolgáltatásnévvel és tanúsítvánnyal című cikkben leírt lépéseket.
Metódus
Ha szolgáltatásnevet és alkalmazásazonosítót szeretne használni a beágyazott elemzésekhez, hajtsa végre az alábbi lépéseket. A következő szakaszok részletesen ismertetik ezeket a lépéseket.
Microsoft Entra-alkalmazás létrehozása.
- Hozzon létre egy titkos kulcsot a Microsoft Entra-alkalmazáshoz.
- Kérje le az alkalmazás alkalmazásazonosítóját és az alkalmazás titkos kódját.
Megjegyzés:
Ezeket a lépéseket az 1. lépés ismerteti. A Microsoft Entra-alkalmazások létrehozásáról további információt a Microsoft Entra-alkalmazás létrehozása című témakörben talál.
Hozzon létre egy Microsoft Entra biztonsági csoportot.
Engedélyezze a Power BI szolgáltatás rendszergazdai beállításokat.
Adja hozzá a szolgáltatásnevet a munkaterülethez.
Beágyazza a tartalmat.
Fontos
A Microsoft Entra-alkalmazások nem követelik meg, hogy delegált engedélyeket vagy alkalmazásengedélyeket konfiguráljon az Azure Portalon, amikor létrehozták egy szolgáltatásnévhez. Amikor létrehoz egy Microsoft Entra-alkalmazást egy szolgáltatásnévhez a Power BI REST API eléréséhez, javasoljuk, hogy kerülje az engedélyek hozzáadását. Soha nem használják őket, és nehezen elhárítható hibákat okozhatnak.
1. lépés – Microsoft Entra-alkalmazás létrehozása
Microsoft Entra-alkalmazás létrehozása az alábbi módszerek egyikével:
- Hozza létre az alkalmazást az Azure Portalon.
- Hozza létre az alkalmazást a PowerShell használatával.
Microsoft Entra-alkalmazás létrehozása az Azure Portalon
Jelentkezzen be az Azure Portalra.
Keresse meg és válassza ki a Alkalmazásregisztrációk.
Új regisztráció kiválasztása.
Adja meg a szükséges információkat:
- Név – Adja meg az alkalmazás nevét.
- Támogatott fióktípusok – Válassza ki a támogatott fióktípusokat.
- (Nem kötelező) Átirányítási URI – Szükség esetén adjon meg egy URI-t.
Válassza ki a pénztárgépet.
Az alkalmazás regisztrálása után az alkalmazásazonosító elérhető az Áttekintés lapon. Másolja ki és mentse az alkalmazásazonosítót későbbi használatra.
Válassza a Tanúsítványok > titkos kulcsok lehetőséget.
Válassza az Új titkos ügyfélkód lehetőséget.
Az Ügyfélkód hozzáadása ablakban adjon meg egy leírást, adja meg, hogy mikor járjon le az ügyfél titkos kódja, majd válassza a Hozzáadás lehetőséget.
Másolja és mentse az ügyfél titkos kódjának értékét.
Megjegyzés:
Az ablak elhagyása után az ügyfél titkos kódjának értéke rejtett lesz, és nem tekintheti meg és nem másolhatja újra.
Microsoft Entra-alkalmazás létrehozása a PowerShell használatával
Az alábbi PowerShell-példaszkript létrehoz egy új Microsoft Entra-alkalmazást és egy szolgáltatásnevet. A szkript futtatása előtt:
- Telepítse a PowerShell legújabb verzióját.
- Telepítse a Microsoft Graph PowerShell SDK-t.
A szkript futtatása után jegyezze fel a következő információkat a szkript kimenetében:
- Az új alkalmazás ügyfélazonosítója
- Az új szolgáltatásnév objektumazonosítója
- A szolgáltatásnév titkos kódjának értéke
# Sign in as a user who's allowed to create an app.
Connect-MgGraph -Scopes "Application.ReadWrite.All"
# Create a new Azure AD web application.
$web = @{
RedirectUris = "https://localhost:44322"
HomePageUrl = "https://localhost:44322"
}
$params = @{
DisplayName = "myAzureADApp"
Web = $($web)
}
$app = New-MgApplication @params
Write-Host "Client ID of new app: " $($app.AppId)
# Create a service principal.
$ServicePrincipalID=@{
"AppId" = $($app.AppId)
}
$sp = New-MgServicePrincipal -BodyParameter $($ServicePrincipalId)
Write-Host "Object ID of new service principal: " $($sp.Id)
# Create a key for the service principal.
$credential = Add-MgServicePrincipalPassword -ServicePrincipalId $($sp.Id)
Write-Host "Credential of new service principal: " $($credential.SecretText)
2. lépés – Microsoft Entra biztonsági csoport létrehozása
A szolgáltatásnév nem rendelkezik hozzáféréssel a Power BI-tartalmakhoz és API-khoz. A szolgáltatásnév-hozzáférés biztosításához hozzon létre egy biztonsági csoportot a Microsoft Entra-azonosítóban. Ezután adja hozzá a létrehozott szolgáltatásnevet a biztonsági csoporthoz.
Megjegyzés:
Ha engedélyezni szeretné a szolgáltatásnév-hozzáférést a teljes szervezet számára, hagyja ki ezt a lépést.
A Microsoft Entra biztonsági csoport kétféleképpen hozható létre:
Biztonsági csoport manuális létrehozása
Ha manuálisan szeretne létrehozni egy Azure-biztonsági csoportot, kövesse az Alapszintű csoport létrehozása és tagok hozzáadása című témakör utasításait.
Biztonsági csoport létrehozása a PowerShell használatával
A következő példaszkript létrehoz egy új biztonsági csoportot. Emellett hozzáadja a korábban létrehozott szolgáltatásnevet az új biztonsági csoporthoz.
- A szkript futtatása előtt cserélje le
<app-client-ID>
az új alkalmazáshoz korábban rögzített ügyfélazonosítót. - A szkript futtatása után jegyezze fel az új biztonsági csoport objektumazonosítóját, amelyet a szkript kimenetében talál.
# Sign in as an admin.
Connect-MgGraph -Scopes "Application.ReadWrite.All"
# Get the service principal that you created earlier.
$servicePrincipal = Get-MgServicePrincipal -Filter "AppId eq '<app-client-ID>'"
# Create an Azure AD security group.
$group = New-MgGroup -DisplayName "securitygroup1" -SecurityEnabled -MailEnabled:$False -MailNickName "notSet"
Write-Host "Object ID of new security group: " $($group.Id)
# Add the service principal to the group.
New-MgGroupMember -GroupId $($group.Id) -DirectoryObjectId $($servicePrincipal.Id)
3. lépés – A Power BI szolgáltatás rendszergazdai beállításainak engedélyezése
Ahhoz, hogy egy Microsoft Entra-alkalmazás hozzáférjen a Power BI-tartalmakhoz és API-khoz, a Power BI rendszergazdájának engedélyeznie kell a következő beállításokat:
- Tartalom beágyazása alkalmazásokba
- A Power BI API-k használatának engedélyezése szolgáltatásneveknek
A Power BI Rendszergazda portálon lépjen a Bérlői beállítások elemre, és görgessen le a fejlesztői beállításokhoz.
Engedélyezze a tartalom beágyazását az alkalmazásokba a teljes szervezet vagy a Microsoft Entra-azonosítóban létrehozott adott biztonsági csoport számára.
Engedélyezze a szolgáltatásnevek számára, hogy a Power BI API-kat a teljes szervezet vagy a Microsoft Entra-azonosítóban létrehozott adott biztonsági csoport számára használják .
Fontos
A szolgáltatásnevek hozzáféréssel rendelkeznek minden olyan bérlői beállításhoz, amelyhez engedélyezve vannak. A rendszergazdai beállításoktól függően ez adott biztonsági csoportokat vagy a teljes szervezetet is magában foglalja.
A szolgáltatásnév adott bérlői beállításokhoz való hozzáférésének korlátozásához csak adott biztonsági csoportokhoz engedélyezze a hozzáférést. Másik lehetőségként létrehozhat egy dedikált biztonsági csoportot a szolgáltatásnevek számára, és kizárhatja azt a kívánt bérlői beállításokból.
4. lépés – A szolgáltatásnév hozzáadása a munkaterülethez
A Microsoft Entra-alkalmazás csak akkor férhet hozzá a Power BI-jelentésekhez, irányítópultokhoz és szemantikai modellekhez, ha hozzáfér a Power BI-munkaterülethez. Ezt a hozzáférést úgy biztosíthatja, hogy tagként vagy rendszergazdaként hozzáadja az alkalmazás szolgáltatásnevét vagy biztonsági csoportját a munkaterülethez.
Háromféleképpen adhat hozzá szolgáltatásnevet vagy annak biztonsági csoportját a munkaterülethez:
Szolgáltatásnév vagy biztonsági csoport manuális hozzáadása
A Power BI szolgáltatás görgessen arra a munkaterületre, amelyhez engedélyezni szeretné a hozzáférést. A Továbbiak menüben válassza a Munkaterület-hozzáférés lehetőséget.
Az Access panelEn, a Rendszergazdák, tagok vagy közreműködők hozzáadása csoportban adja hozzá az alábbiak egyikét:
- A szolgáltatásnév. A szolgáltatásnév neve a Microsoft Entra-alkalmazás megjelenítendő neve , ahogy az a Microsoft Entra-alkalmazás áttekintési lapján is megjelenik.
- A szolgáltatásnevet tartalmazó biztonsági csoport .
A legördülő menüben válassza a Tag vagy Rendszergazda lehetőséget.
Válassza a Hozzáadás lehetőséget.
Szolgáltatásnév vagy biztonsági csoport hozzáadása a PowerShell használatával
A következő szakaszok powerShell-példaszkripteket nyújtanak egy szolgáltatásnév és egy biztonsági csoport tagként való hozzáadásához a Power BI-munkaterülethez.
Szolgáltatásnév hozzáadása munkaterület-tagként a PowerShell használatával
Az alábbi szkript egy szolgáltatásnevet ad hozzá munkaterület-tagként. A szkript futtatása előtt:
- Cserélje le
<service-principal-object-ID>
az új szolgáltatásnévhez korábban rögzített objektumazonosítót. - Cserélje le
<workspace-name>
annak a munkaterületnek a nevét, amelyhez hozzáférést szeretne adni a szolgáltatásnévnek.
# Sign in to Power BI.
Login-PowerBI
# Set up the service principal ID.
$SPObjectID = "<service-principal-object-ID>"
# Get the workspace.
$pbiWorkspace = Get-PowerBIWorkspace -Filter "name eq '<workspace-name>'"
# Add the service principal to the workspace.
Add-PowerBIWorkspaceUser -Id $($pbiWorkspace.Id) -AccessRight Member -PrincipalType App -Identifier $($SPObjectID)
Biztonsági csoport hozzáadása munkaterület-tagként a PowerShell használatával
Az alábbi szkript egy biztonsági csoportot ad hozzá munkaterület-tagként. A szkript futtatása előtt:
- Cserélje le
<security-group-object-ID>
az új biztonsági csoporthoz korábban rögzített objektumazonosítóra. - Cserélje le
<workspace-name>
annak a munkaterületnek a nevét, amelyhez hozzáférést szeretne adni a biztonsági csoportnak.
# Sign in to Power BI.
Login-PowerBI
# Set up the security group object ID.
$SGObjectID = "<security-group-object-ID>"
# Get the workspace.
$pbiWorkspace = Get-PowerBIWorkspace -Filter "name eq '<workspace-name>'"
# Add the security group to the workspace.
Add-PowerBIWorkspaceUser -Id $($pbiWorkspace.Id) -AccessRight Member -PrincipalType Group -Identifier $($SGObjectID)
5. lépés – Tartalom beágyazása
A tartalmat beágyazhatja egy mintaalkalmazásba vagy a saját alkalmazásába.
A tartalom beágyazása után készen áll az éles környezetbe való áttérésre.
Megjegyzés:
Ha tanúsítvány használatával szeretné biztonságossá tenni a tartalmat, kövesse a Power BI-tartalmak beágyazása szolgáltatásnévvel és tanúsítvánnyal című cikkben leírt lépéseket.
Szempontok és korlátozások
- Szolgáltatásnév használata esetén a munkaterület nem támogatott.
- Az éles környezetbe való áttéréshez kapacitásra van szükség.
- Szolgáltatásnév használatával nem tud bejelentkezni a Power BI portálra.
- A Power BI felügyeleti jogosultságai szükségesek a szolgáltatásnév engedélyezéséhez a Power BI Rendszergazda portál fejlesztői beállításaiban.
- A szervezeti alkalmazások beágyazása nem tudja használni a szolgáltatásnevet.
- Az adatfolyamok kezelése nem támogatott.
- A szolgáltatásnév csak néhány írásvédett rendszergazdai API-t támogat. Ha engedélyezni szeretné a szolgáltatásnév támogatását az írásvédett rendszergazdai API-khoz, engedélyeznie kell a Power BI szolgáltatás rendszergazdai beállításokat a bérlőben. További információ: Egyszerű szolgáltatáshitelesítés engedélyezése írásvédett rendszergazdai API-khoz.
- Ha szolgáltatásnevet használ egy Azure Analysis Services-adatforrással , magának a szolgáltatásnévnek rendelkeznie kell Azure Analysis Services-példányengedélyekkel. Nem működik a szolgáltatásnevet tartalmazó biztonsági csoport használata.