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.

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.

  1. Vytvorte aplikáciu Microsoft Entra.

    1. Vytvorte tajný kód pre aplikáciu Microsoft Entra.
    2. 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.

  2. Vytvorte skupinu zabezpečenia Microsoft Entra.

  3. Povoľte nastavenia správcu služba Power BI.

  4. Pridajte objekt služby do svojho pracovného priestoru.

  5. 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

  1. Prihláste sa do portálu Azurel.

  2. Vyhľadajte a vyberte položku Registrácie aplikácií.

    Snímka obrazovky portálu Azure s registráciou aplikácie v poli hľadania. Toto pole a ikona Registrácie aplikácií sú zvýraznené.

  3. Vyberte položku Nová registrácia.

    Snímka obrazovky registračnej stránky aplikácie na portáli Azure. Je zvýraznená nová registrácia.

  4. 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.
  5. Vyberte položku Registrovať.

  6. 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.

    Snímka obrazovky stránky Prehľad novej aplikácie. ID aplikácie je nezistiteľné a je zvýraznené.

  7. Vyberte položku Certificates &secrets (Certifikáty a tajné kódy).

    Snímka obrazovky stránky Prehľad novej aplikácie. Na navigačnej table je zvýraznená možnosť Certifikáty a tajné kódy.

  8. Vyberte položku Nový tajný kľúč klienta.

    Snímka obrazovky znázorňujúca časť stránky Certificates &secrets (Certifikáty a tajné kódy) pre aplikáciu. V časti Client secrets (Tajné kódy klienta) je zvýraznené tlačidlo Nový tajný kľúč klienta.

  9. 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ť.

  10. Skopírujte a uložte hodnotu tajného kľúča klienta.

    Snímka obrazovky so stránku Certificates &secrets (Certifikáty a tajné kódy) pre aplikáciu. V časti Client secrets (Tajné kódy klienta) je viditeľný nový tajný kód. Jeho nezistiteľná hodnota je zvýraznená.

    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:

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.

    Snímka obrazovky znázorňujúca nastavenia vývojára v časti Nastavenia nájomníka na portáli Spravovanie. Možnosť vkladania obsahu do aplikácií je zapnutá.

  • 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.

    Snímka obrazovky sekcie Nastavenia pre vývojára. Možnosť povolenia používania rozhranie API služby Power BI pre objekty služby je zapnutá pre jednu skupinu zabezpečenia.

    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 pridanie objektu služby alebo skupiny zabezpečenia

  1. 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.

    Snímka obrazovky znázorňujúca rozbalenú ponuku Ďalšie pre pracovný priestor. V tejto ponuke je prístup k pracovnému priestoru zvýraznený.

  2. 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.
  3. V rozbaľovacej ponuke vyberte položku Člen alebo Spravovanie.

  4. 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.