Vloženie obsahu služby Power BI pomocou objektu služby a tajného kódu aplikácie
Objekt služby je metóda overovania, ktorá sa dá použiť na umožnenie prístupu aplikácie Microsoft Entra k obsahu služba Power BI a rozhraniam API.
Keď vytvoríte aplikáciu Microsoft Entra, vytvorí sa hlavný objekt služby. Hlavný objekt služby alebo jednoducho objekt služby umožňuje ID služby Microsoft Entra overiť vašu aplikáciu. Po overení môže aplikácia získať prístup k prostriedkom nájomníka Microsoft Entra.
Na overenie používa objekt služby ID aplikácie Microsoft Entra a jednu z týchto možností:
- Certifikát
- Tajný kód aplikácie
Tento článok popisuje overovanie objektom služby pomocou ID aplikácie a tajného kódu aplikácie.
Poznámka
Odporúčame, aby ste na zabezpečenie svojich serverových služieb použili radšej certifikáty, nie tajné kľúče.
- Získajte ďalšie informácie o získavaní prístupových tokenov z ID služby Microsoft Entra pomocou tajných kľúčov alebo certifikátov.
- Ak chcete zabezpečiť svoje riešenie pomocou certifikátu, postupujte podľa pokynov v tomto článku a v téme Vloženie obsahu služby Power BI pomocou objektu služby a certifikátu.
Metóda
Ak chcete na vloženú analýzu použiť objekt služby a ID aplikácie, postupujte podľa nasledujúcich krokov. Nasledujúce časti podrobne popisujú tieto kroky.
Vytvorte aplikáciu Microsoft Entra.
- Vytvorte tajný kód pre aplikáciu Microsoft Entra.
- Získajte ID aplikácie a tajný kód aplikácie.
Poznámka
Tieto kroky sú popísané v kroku 1. Ďalšie informácie o vytváraní aplikácie Microsoft Entra nájdete v téme o vytvorení aplikácie Microsoft Entra.
Vytvorte skupinu zabezpečenia Microsoft Entra.
Povoľte nastavenia správcu služba Power BI.
Pridajte objekt služby do svojho pracovného priestoru.
Vložte svoj obsah.
Dôležité
Aplikácia Microsoft Entra nevyžaduje, aby ste pri vytváraní pre objekt služby na portáli Azure nakonfigurovali žiadne delegované povolenia ani povolenia aplikácie. Keď vytvoríte aplikáciu Microsoft Entra pre objekt služby na prístup k rozhraniu REST API služby Power BI, odporúča sa vyhnúť pridávaniu povolení. Nikdy sa nepoužívajú a môžu spôsobiť chyby, ktoré sa ťažko riešia.
Krok 1 – Vytvorte aplikáciu Microsoft Entra
Pomocou niektorého z týchto postupov vytvorte aplikáciu Microsoft Entra:
Vytvorenie aplikácie Microsoft Entra na portáli Azure
Prihláste sa do portálu Azurel.
Vyhľadajte a vyberte položku Registrácie aplikácií.
Vyberte položku Nová registrácia.
Vyplňte požadované informácie:
- Názov – zadajte názov aplikácie.
- Podporované typy kont – vyberte podporované typy kont.
- (Voliteľné) Identifikátor URI presmerovania – v prípade potreby zadajte identifikátor URI.
Vyberte položku Registrovať.
Po registrácii aplikácie je ID aplikácie k dispozícii na karte Prehľad . Skopírujte a uložte ID aplikácie na neskoršie použitie.
Vyberte položku Certificates &secrets (Certifikáty a tajné kódy).
Vyberte položku Nový tajný kľúč klienta.
V okne Pridať tajný kľúč klienta zadajte popis, zadajte, kedy sa má vypršať platnosť tajného kľúča klienta, a vyberte položku Pridať.
Skopírujte a uložte hodnotu tajného kľúča klienta.
Poznámka
Po opustení tohto okna sa hodnota tajného kľúča klienta skryje a už ju nebudete môcť zobraziť ani skopírovať.
Vytvorenie aplikácie Microsoft Entra pomocou prostredia PowerShell
V nasledujúcej ukážke skriptu PowerShell sa vytvorí nová aplikácia Microsoft Entra a objekt služby. Pred spustením tohto skriptu:
- Nainštalujte najnovšiu verziu prostredia PowerShell.
- Nainštalujte súpravu Microsoft Graph PowerShell SDK.
Po spustení skriptu si v skripte poznačte nasledujúce informácie:
- ID klienta novej aplikácie
- ID objektu nového objektu služby
- Hodnota tajného kódu objektu služby
# 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)
Krok 2 – Vytvorte skupinu zabezpečenia Microsoft Entra
Objekt služby nemá prístup k žiadnemu obsahu služby Power BI a rozhraniam API. Ak chcete prístup pre objekt služby, vytvorte v službe Microsoft Entra ID skupinu zabezpečenia. Potom pridajte objekt služby, ktorý ste vytvorili, do tejto skupiny zabezpečenia.
Poznámka
Ak chcete povoliť prístup k objektu služby pre celú organizáciu, vynechajte tento krok.
Existujú dva spôsoby, ako vytvoriť skupinu zabezpečenia Microsoft Entra:
Manuálne vytvorenie skupiny zabezpečenia
Ak chcete vytvoriť skupinu zabezpečenia služby Azure manuálne, postupujte podľa pokynov v téme Vytvorenie základnej skupiny a pridanie členov.
Vytvorenie skupiny zabezpečenia pomocou prostredia PowerShell
Nasledujúci ukážkový skript vytvorí novú skupinu zabezpečenia. Pridá tiež objekt služby, ktorý ste predtým vytvorili, do novej skupiny zabezpečenia.
- Pred spustením skriptu nahraďte
<app-client-ID>
id klienta, ktoré ste predtým nahrali pre svoju novú aplikáciu. - Po spustení skriptu si poznačte ID objektu novej skupiny zabezpečenia, ktorú môžete nájsť vo výstupe skriptu.
# 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)
Krok 3 – Povolenie nastavení správcu služba Power BI
Ak chcete, aby aplikácia Microsoft Entra pristupovala k obsahu služby Power BI a rozhraniam API, správca služby Power BI musí povoliť nasledujúce nastavenia:
- Vkladanie obsahu v aplikáciách
- Povolenie pre objekty služby používať rozhrania API služby Power BI
Na portáli Spravovanie Power BI prejdite do časti Nastavenia nájomníka a posuňte sa nadol na položku Nastavenia pre vývojára.
Povoľte vkladanie obsahu v aplikáciách , a to buď pre celú organizáciu, alebo pre konkrétnu skupinu zabezpečenia, ktorú ste vytvorili v id Microsoft Entra.
Povoľte objektom služby používať rozhranie API služby Power BI buď pre celú organizáciu, alebo pre konkrétnu skupinu zabezpečenia, ktorú ste vytvorili v službe Microsoft Entra ID.
Dôležité
Objekty služby majú prístup ku všetkým nastaveniam nájomníka, pre ktorého sú povolené. V závislosti od nastavení správcu to zahŕňa konkrétne skupiny zabezpečenia alebo celú organizáciu.
Ak chcete obmedziť prístup objektu služby ku konkrétnym nastaveniam nájomníka, povoľte prístup iba ku konkrétnym skupinám zabezpečenia. Prípadne môžete vytvoriť vyhradenú skupinu zabezpečenia pre objekty služby a vylúčiť ju z požadovaných nastavení nájomníka.
Krok 4 – Pridanie objektu služby do pracovného priestoru
Aplikácia Microsoft Entra môže pristupovať k zostavám, tabuliam a sémantickým modelom služby Power BI iba vtedy, keď má prístup k vášmu pracovnému priestoru služby Power BI. Tento prístup poskytnete tak, že do pracovného priestoru pridáte objekt služby aplikácie alebo jeho skupinu zabezpečenia ako člena alebo správcu.
Existujú tri spôsoby, ako pridať objekt služby alebo jeho skupinu zabezpečenia do pracovného priestoru:
- Manuálne
- Použitie prostredia PowerShell
- Použitie skupín – pridanie rozhrania API používateľov skupiny
Manuálne pridanie objektu služby alebo skupiny zabezpečenia
V služba Power BI prejdite do pracovného priestoru, pre ktorý chcete povoliť prístup. V ponuke Viac vyberte položku Prístup k pracovnému priestoru.
Na table Prístup v časti Pridať správcov, členov alebo prispievateľov pridajte jeden z týchto možností:
- Váš objekt služby. Názov objektu služby je Zobrazovaný názov vašej aplikácie Microsoft Entra tak, ako sa zobrazuje na karte prehľadu aplikácie Microsoft Entra.
- Skupina zabezpečenia, ktorá obsahuje váš objekt služby.
V rozbaľovacej ponuke vyberte položku Člen alebo Spravovanie.
Stlačte možnosť Pridať.
Pridanie objektu služby alebo skupiny zabezpečenia pomocou prostredia PowerShell
V nasledujúcich častiach nájdete vzorové skripty prostredia PowerShell na pridanie objektu služby a skupiny zabezpečenia do pracovného priestoru služby Power BI ako člena.
Pridanie objektu služby ako člena pracovného priestoru pomocou prostredia PowerShell
Nasledujúci skript pridá objekt služby ako člena pracovného priestoru. Pred spustením skriptu:
- Nahraďte
<service-principal-object-ID>
ID objektu, ktoré ste predtým zaznamenali pre nový objekt služby. - Nahraďte
<workspace-name>
názvom pracovného priestoru, ku ktorému chcete dať objektu služby prístup.
# 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)
Pridanie skupiny zabezpečenia ako člena pracovného priestoru pomocou prostredia PowerShell
Nasledujúci skript pridá skupinu zabezpečenia ako člena pracovného priestoru. Pred spustením skriptu:
- Nahraďte
<security-group-object-ID>
ID objektu, ktoré ste predtým zaznamenali pre novú skupinu zabezpečenia. - Nahraďte
<workspace-name>
názvom pracovného priestoru, ku ktorému chcete skupine zabezpečenia udeliť prístup.
# 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)
Krok 5 – Vloženie obsahu
Obsah môžete vložiť do ukážkovej aplikácie alebo vašej vlastnej aplikácie.
Po vložení obsahu môžete prejsť na produkciu.
Poznámka
Ak chcete zabezpečiť svoj obsah pomocou certifikátu, postupujte podľa krokov popísaných v téme Vloženie obsahu služby Power BI pomocou objektu služby a certifikátu.
Dôležité informácie a obmedzenia
- Môj pracovný priestor nie je podporovaný, ak sa používa objekt služby.
- Pri presune do produkcie je kapacita nutnosťou.
- Do portálu služby Power BI sa nemôžete prihlásiť pomocou objektu služby.
- Na povolenie objektu služby v nastaveniach pre vývojára v rámci portálu Spravovanie služby Power BI sa vyžadujú práva správcu služby Power BI.
- Aplikácie s vloženým použitím pre vašu organizáciu nemôžu používať objekt služby.
- Správa tokov údajov nie je podporovaná.
- Objekt služby podporuje len niektoré rozhrania API správcu určené iba na čítanie. Ak chcete povoliť podporu objektu služby pre rozhrania API správcu iba na čítanie, musíte vo svojom nájomníkovi povoliť nastavenia správcu služba Power BI. Ďalšie informácie nájdete v téme Povolenie overovania objektom služby pre rozhrania API správcu iba na čítanie.
- Keď používate objekt služby so zdrojom údajov Azure Analysis Services , samotný objekt služby musí mať povolenia inštancie služby Azure Analysis Services. Použitie skupiny zabezpečenia obsahujúcej objekt služby na tento účel nefunguje.