Uso di OAuth per connettersi a Server di report di Power BI e SSRS
È possibile usare OAuth per connettersi a Server di report di Power BI e Reporting Services per visualizzare report per dispositivi mobili o indicatori KPI. Informazioni su come configurare l'ambiente per supportare l'autenticazione OAuth con l'app Power BI per dispositivi mobili per connettersi a Server di report di Power BI e SQL Server Reporting Services 2016 o versione successiva.
Nota
La visualizzazione dei report di Power BI ospitati in Server di report di Power BI l'uso di WAP per l'autenticazione è ora supportata per le app iOS e Android.
Requisiti
Windows Server 2016 è necessario per i server Web Application Proxy (WAP) e Active Directory Federation Services (ADFS). Non è necessario avere un dominio a livello di funzionalità di Windows 2016.
Per consentire agli utenti di aggiungere una connessione al server di report all'app Power BI per dispositivi mobili, è necessario concedere loro l'accesso alla home cartella del server di report.
Configurazione di Domain Name Services (DNS)
L'URL pubblico sarà che l'app Power BI per dispositivi mobili si connetterà. Ad esempio, può essere simile al seguente.
https://reports.contoso.com
Il record DNS per i report all'indirizzo IP pubblico del server Proxy applicazione Web (WAP). È anche necessario configurare un record DNS pubblico per il server ADFS. Ad esempio, è possibile che il server ADFS sia stato configurato con l'URL seguente.
https://fs.contoso.com
Il record DNS per fs all'indirizzo IP pubblico del server Proxy applicazione Web (WAP) come verrà pubblicato come parte dell'applicazione WAP.
Certificati
È necessario configurare i certificati sia per l'applicazione WAP che per il server ADFS. Entrambi questi certificati devono far parte di un'autorità di certificazione valida riconosciuta dai dispositivi mobili.
Configurazione di Reporting Services
Non c'è molto da configurare sul lato Reporting Services. È sufficiente assicurarsi che:
- Esiste un nome dell'entità servizio (SPN) valido per consentire la corretta esecuzione dell'autenticazione Kerberos.
- Il server Reporting Services è abilitato per negoziare l'autenticazione.
- Gli utenti hanno accesso alla home folder del server di report.
Nome dell'entità servizio (SPN)
Il nome SPN è un identificatore univoco per un servizio che usa l'autenticazione Kerberos. È necessario assicurarsi di disporre di un nome SPN HTTP appropriato per il server di report.
Per informazioni su come configurare il nome dell'entità servizio (SPN) appropriato per il server di report, vedere Registrare un nome dell'entità servizio (SPN) per un server di report.
Abilitazione dell'autenticazione negoziata
Per consentire a un server di report di usare l'autenticazione Kerberos, è necessario configurare il tipo di autenticazione del server di report in modo che sia RSWindowsNegotiate. Questa operazione viene eseguita nel file rsreportserver.config.
<AuthenticationTypes>
<RSWindowsNegotiate />
<RSWindowsKerberos />
<RSWindowsNTLM />
</AuthenticationTypes>
Per altre informazioni, vedere Modificare un file di configurazione di Reporting Services e Configurare l'autenticazione di Windows in un server di report.
Configurazione di Active Directory Federation Services (ADFS)
È necessario configurare ADFS in un server Windows 2016 all'interno dell'ambiente. La configurazione può essere eseguita tramite Server Manager e selezionando Aggiungi ruoli e funzionalità in Gestisci. Per altre informazioni, vedere Active Directory Federation Services.
Creare un gruppo di applicazioni
Nella schermata Gestione AD FS si vuole creare un gruppo di applicazioni per Reporting Services, che includerà informazioni per le app Power BI per dispositivi mobili.
È possibile creare il gruppo di applicazioni seguendo questa procedura.
Nell'app Gestione AD FS fare clic con il pulsante destro del mouse su Gruppi di applicazioni e scegliere Aggiungi gruppo di applicazioni...
Nella Procedura guidata Aggiungi gruppo di applicazioni specificare un nome per il gruppo di applicazioni e selezionare Applicazione nativa che accede a un'API Web.
Seleziona Avanti.
Specificare un nome per l'applicazione da aggiungere.
Mentre l'ID client verrà generato automaticamente per l'utente, immettere in 484d54fc-b481-4eee-9505-0258a1913020 sia per iOS che per Android.
Si vogliono aggiungere gli URL di reindirizzamento seguenti:
Voci per Power BI per dispositivi mobili - iOS:
msauth://code/mspbi-adal://com.microsoft.powerbimobile
msauth://code/mspbi-adalms://com.microsoft.powerbimobilems
mspbi-adal://com.microsoft.powerbimobile
mspbi-adalms://com.microsoft.powerbimobilemsPer le app Android sono necessari solo i passaggi seguenti:
urn:ietf:wg:oauth:2.0:oobSeleziona Avanti.
Specificare l'URL per il server di report. L'URL è l'URL esterno che raggiungerà il proxy applicazione Web. Deve essere nel formato seguente.
Nota
Questo URL fa distinzione tra maiuscole e minuscole.
https://<report server url>/reports
Seleziona Avanti.
Scegliere i criteri di Controllo di accesso adatti alle esigenze dell'organizzazione.
Seleziona Avanti.
Selezionare Avanti.
Seleziona Avanti.
Selezionare Chiudi.
Al termine, le proprietà del gruppo di applicazioni dovrebbero essere simili alle seguenti.
Configurazione del proxy applicazione Web (WAP)
Si vuole abilitare il ruolo Windows proxy applicazione Web (ruolo) in un server nell'ambiente. Deve trovarsi in un server Windows 2016. Per altre informazioni, vedere Proxy applicazione Web in Windows Server 2016 e Pubblicazione di applicazioni con la preautenticazione di AD FS.
Configurazione della delega vincolata
Per passare dall'autenticazione OAuth alla autenticazione di Windows, è necessario usare la delega vincolata con la transizione del protocollo. Questa è parte della configurazione Kerberos. È già stato definito il nome SPN di Reporting Services all'interno della configurazione di Reporting Services.
È necessario configurare la delega vincolata nell'account computer del server WAP all'interno di Active Directory. Potrebbe essere necessario collaborare con un amministratore di dominio se non si dispone dei diritti per Active Directory.
Per configurare la delega vincolata, seguire questa procedura.
In un computer in cui sono installati gli strumenti di Active Directory avviare Utenti e computer di Active Directory.
Trovare l'account del computer per il server WAP. Per impostazione predefinita, si troverà nel contenitore computer.
Fare clic con il pulsante destro del mouse sul server WAP e passare a Proprietà.
Selezionare la scheda Delega .
Selezionare Considera attendibile il computer per la delega solo ai servizi specificati e quindi Usa qualsiasi protocollo di autenticazione.
In questo modo viene impostata la delega vincolata per questo account computer del server WAP. È quindi necessario specificare i servizi a cui il computer è autorizzato a delegare.
Selezionare Aggiungi... nella casella servizi.
Selezionare Utenti o computer...
Immettere l'account del servizio usato per Reporting Services. Questo account è l'account a cui è stato aggiunto il nome SPN all'interno della configurazione di Reporting Services.
Selezionare il nome SPN per Reporting Services e quindi selezionare OK.
Nota
È possibile che venga visualizzato solo il nome SPN NetBIOS. In realtà selezionerà sia i nomi SPN NetBIOS che FQDN, se presenti entrambi.
Il risultato dovrebbe essere simile al seguente quando la casella di controllo Espansa è selezionata.
Seleziona OK.
Aggiungere un'applicazione WAP
Anche se è possibile pubblicare applicazioni all'interno della Console di gestione degli accessi report, è consigliabile creare l'applicazione tramite PowerShell. Ecco il comando per aggiungere l'applicazione.
Add-WebApplicationProxyApplication -Name "Contoso Reports" -ExternalPreauthentication ADFS -ExternalUrl https://reports.contoso.com/ -ExternalCertificateThumbprint "0ff79c75a725e6f67e3e2db55bdb103efc9acb12" -BackendServerUrl https://ContosoSSRS/ -ADFSRelyingPartyName "Reporting Services - Web API" -BackendServerAuthenticationSPN "http/ContosoSSRS.contoso.com" -UseOAuthAuthentication
Parametro | Commenti |
---|---|
ADFSRelyingPartyName | Nome dell'API Web creato come parte del gruppo di applicazioni all'interno di ADFS. |
ExternalCertificateThumbprint | Certificato da usare per gli utenti esterni. È importante che il certificato sia valido nei dispositivi mobili e provengano da un'autorità di certificazione attendibile. |
BackendServerUrl | URL del server di report dal server WAP. Se il server WAP si trova in una rete perimetrale, potrebbe essere necessario usare un nome di dominio completo. Assicurarsi di poter raggiungere questo URL dal Web browser nel server WAP. |
BackendServerAuthenticationSPN | Nome SPN creato come parte della configurazione di Reporting Services. |
Impostazione dell'autenticazione integrata per l'applicazione WAP
Dopo aver aggiunto l'applicazione WAP, è necessario impostare BackendServerAuthenticationMode per usare IntegratedWindowsAuthentication. Per impostarlo, è necessario l'ID dell'applicazione WAP.
Get-WebApplicationProxyApplication "Contoso Reports" | fl
Eseguire il comando seguente per impostare BackendServerAuthenticationMode usando l'ID dell'applicazione WAP.
Set-WebApplicationProxyApplication -id 30198C7F-DDE4-0D82-E654-D369A47B1EE5 -BackendServerAuthenticationMode IntegratedWindowsAuthentication
Connessione con l'app Power BI per dispositivi mobili
All'interno dell'app Power BI per dispositivi mobili si vuole connettersi all'istanza di Reporting Services. A tale scopo, specificare l'URL esterno per l'applicazione WAP.
Quando si seleziona Connessione, si verrà indirizzati alla pagina di accesso ad ADFS. Immettere le credenziali valide per il dominio.
Dopo aver selezionato Accedi, vengono visualizzati gli elementi del server Reporting Services.
Autenticazione a più fattori
È possibile abilitare l'autenticazione a più fattori per abilitare la sicurezza aggiuntiva per l'ambiente in uso. Per altre informazioni, vedere Configurare Azure MFA come provider di autenticazione con AD FS.
Risoluzione dei problemi
Viene visualizzato l'errore "Non è stato possibile accedere al server SSRS"
È possibile configurare Fiddler in modo da fungere da proxy per i dispositivi mobili per vedere quanto è stata effettuata la richiesta. Per abilitare un proxy Fiddler per il dispositivo telefonico, è necessario configurare CertMaker per iOS e Android nel computer che esegue Fiddler. Il componente aggiuntivo proviene da Telerik per Fiddler.
Se l'accesso funziona correttamente quando si usa Fiddler, è possibile che si verifichi un problema di certificato con l'applicazione WAP o il server ADFS.
Contenuto correlato
- Registrare un nome dell'entità servizio (SPN) per un server di report
- Modificare un file di configurazione di Reporting Services
- Configurare l'autenticazione di Windows in un server di report
- Active Directory Federation Services
- Proxy applicazione Web in Windows Server 2016
- Pubblicazione delle applicazioni con la preautenticazione di AD FS
- Configurare AD FS 2016 e Azure MFA
Altre domande? Contattare la community di Power BI