Přeskočit na hlavní obsah

MS Entra ověřování pro PowerBI (on-premise)

Předpoklady​

Nastavení IIS​

Nejprve je třeba vytvořit a nastavit dedikovanou kopii aplikace AlvaoRestApi pro poskytování dat sestav.

  1. V Application Pools - Přidat Application Pool:

    • Název: AlvaoRestApiReports AppPool
    • Všechna ostatní nastavení (např. identita AppPool) nastavte stejně jako pro AlvaoRestApi AppPool
  2. V Sites – Default Web Site – Přidat aplikaci:

    • Alias: AlvaoRestApiReports
    • Správce aplikací: AlvaoRestApiReports App Pool
    • Fyzická cesta: stejná jako pro aplikaci AlvaoRestApi (např. C:\inetpub\wwwroot\AlvaoRestApi)
    • Klikněte na OK
  3. Přejděte na \<your server>/AlvaoRestApiReports a ujistěte se, že aplikace běží ok. Měla by vracet stejné informace jako standardní AlvaoRestApi.

  4. Umožněte přístup k AlvaoRestApiReports z vaší veřejné domény, např. https://contoso.com/AlvaoRestApiReports

  5. V instalační cestě AlvaoRestApi (např. C:\inetpub\wwwroot\AlvaoRestApi) otevřete web.config a odeberte řádek: <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Production" />

  6. Otevřete Příkazový řádek jako administrátor a spusťte následující příkazy:

cd C:\Windows\system32\inetsrv

.\appcmd.exe set config -section:system.applicationHost/applicationPools /+"[name='AlvaoRestApiReports AppPool'].environmentVariables.[name='ASPNETCORE_ENVIRONMENT',value='Reports']"

.\appcmd.exe set config -section:system.applicationHost/applicationPools /+"[name='AlvaoRestApi AppPool'].environmentVariables.[name='ASPNETCORE_ENVIRONMENT',value='Production']"

Zkontrolovat proměnné ASPNETCORE_ENVIRONMENT pro aplikační pooly můžete následujícím příkazem:

.\appcmd.exe list apppool "AlvaoRestApi AppPool" /config

.\appcmd.exe list apppool "AlvaoRestApiReports AppPool" /config

Nastavení MS Entra​

Musíme vytvořit novou registraci aplikace v MS Entra, která bude používána pouze pro ověřování v Power BI.

  1. V App Registrations – Registrovat aplikaci

    • Název: AlvaoRestApi Reports
  2. V AlvaoRestApiReports – Expose an API

    Poznámka

    Nejprve je nutné ověřit vlastnictví domény v službě Domain Names

    • Přidat rozsah

      • Název: Reports
      • Kdo může udělit souhlas?: Administrátoři a uživatelé
      • Název zobrazený při souhlasu administrátora: Alvao Reports
      • Popis souhlasu administrátora: Umožňuje uživatelům připojit se k Alvao Reports
      • Stav: Povolen
    • **Přidat klientskou aplikaci: **

      • ClientID: b52893c8-bc2e-47fc-918b-77022b299bbc
      • Autorizované rozsahy: vyberte dříve přidaný rozsah
      • Poznámka: Jedná se o důvěrného klienta, používaného v Power BI službě
    • Přidat klientskou aplikaci:

      • ClientID: a672d62c-fc7b-4e81-a576-e60dc46e951d
      • Autorizované rozsahy: vyberte dříve přidaný rozsah
      • Poznámka: Jedná se o veřejného klienta, používaného v Power BI Desktop a gateway.

Dokončení konfigurace​

  1. V instalační cestě AlvaoRestApi vytvořte nový soubor appsettings.Reports.json s následujícím obsahem:
    • atribut AAD_ApplicationId nastavte na Application (client) ID aplikace AlvaoRestApi Reports vytvořené v předchozích krocích
    • atribut AAD_AdditionalAudience nastavte na URL ID aplikace z vaší registrace aplikace, např.:
{

"AAD_ApplicationId": "f3adada9-c73e-4b86-b30e-c86bc6ce0a93",

"AAD_AdditionalAudience": "https://contoso.com/AlvaoRestApiReports",

}

  1. Otevřete AlvaoRestApiReports/v1/systemSettings (např. https://contoso.com/AlvaoRestApiReports/v1/systemSettings) v prohlížeči a zkontrolujte, že v odpovědi je hodnota addClientId nastavena na AAD_ApplicationId z předchozího kroku

  2. Stejnou kontrolu proveďte pro /AlvaoRestApi, měla by vracet clientId nastavené v AzureApplicationId vlastnosti.

Načtení dat do PowerBI sestavy​

Postupujte podle on-premise postupu v šablonách Power BI sestav, připojte vaši sestavu k aplikaci AlvaoRestApiReports (např. https://contoso.com/AlvaoRestApiReports) vytvořené v předchozích krocích.