In diesem Leitfaden erfahren Sie, wie Sie Nutzern in Microsoft Entra-Gruppen mithilfe von Workforce Identity Federation den Zugriff auf BigQuery-Daten in Power BI ermöglichen.
Microsoft Entra ist der Identitätsanbieter (Identity Provider, IdP). Gruppenanforderungen von Microsoft Entra werden Google Cloud zugeordnet. Gruppen erhalten IAM-Berechtigungen (Identity and Access Management) für den Zugriff auf die BigQuery-Daten.
Diese Anleitung enthält eine Anleitung für Power BI Desktop oder Web.
Hinweise
Sie müssen eine Google Cloud-Organisation eingerichtet haben.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Sie benötigen Zugriff auf Microsoft Entra und Microsoft Graph.
Sie müssen Power BI eingerichtet haben.
Erforderliche Rollen
In diesem Abschnitt werden Rollen beschrieben, die für Administratoren und Ressourcen erforderlich sind.
Rollen für Administratoren
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle IAM-Mitarbeiterpool-Administrator (roles/iam.workforcePoolAdmin
) für die Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren der Mitarbeiteridentitätsföderation benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Alternativ enthält die einfache Rolle „IAM-Inhaber“ (roles/owner
) auch Berechtigungen zum Konfigurieren der Identitätsföderation.
In einer Produktionsumgebung sollten Sie keine einfachen Rollen zuweisen, Sie können sie aber in einer Entwicklungs- oder Testumgebung gewähren.
Rollen für föderierte Identitäten
Power BI sendet den Parameter userProject
während des Tokenaustauschs. Aus diesem Grund müssen Sie Ihren Administrator bitten, den föderierten Identitäten im Abrechnungsprojekt die Rolle "Service Usage-Nutzer" (roles/serviceusage.serviceUsageConsumer
) zuzuweisen.
Führen Sie den folgenden Befehl aus, um die Rolle einer Gruppe von föderierten Identitäten zuzuweisen:
gcloud projects add-iam-policy-binding PROJECT_ID \
--role="roles/serviceusage.serviceUsageConsumer" \
--member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"
Ersetzen Sie Folgendes:
PROJECT_ID
: die ID des Abrechnungsprojekts.WORKFORCE_POOL_ID
: die ID des Mitarbeiteridentitätspools.GROUP_ID
: die Gruppen-ID, z. B.admin-group@example.com
. Eine Liste der allgemeinen Hauptkonto-Kennungen finden Sie unter Hauptkonto-Kennungen.
Workforce Identity-Pool erstellen
In diesem Abschnitt wird beschrieben, wie Sie den Workforce Identity-Pool erstellen. Den Anbieter des Mitarbeiteridentitätspools erstellen Sie später in dieser Anleitung.
Console
So erstellen Sie den Workforce Identity-Pool:
Rufen Sie in der Google Cloud Console die Seite Workforce Identity-Pools auf:
Klicken Sie auf Pool erstellen und gehen Sie so vor:
Geben Sie im Feld Name den Anzeigenamen des Pools ein. Die Pool-ID wird während der Eingabe automatisch aus dem Namen abgeleitet und im Feld Name angezeigt. Sie können die Pool-ID aktualisieren, indem Sie neben der Pool-ID auf Bearbeiten klicken.
Optional: Geben Sie unter Beschreibung eine Beschreibung des Pools ein.
Die Sitzungsdauer ist standardmäßig festgelegt. Klicken Sie auf Bearbeiten, um eine benutzerdefinierte Sitzungsdauer einzugeben. Die Sitzungsdauer bestimmt, wie lange die Google Cloud-Zugriffstokens, die Console-Anmeldesitzungen (föderiert) und die gcloud CLI-Anmeldungssitzungen aus diesem Workforce-Pool gültig sind. Die Dauer muss mehr als 15 Minuten (900s) und weniger als 12 Stunden (43.200s) betragen. Wenn keine Sitzungsdauer festgelegt ist, wird standardmäßig eine Dauer von einer Stunde (3.600 s) verwendet.
Damit der Pool im aktivierten Status erstellt werden kann, muss Aktivierter Pool aktiviert sein.
Klicken Sie zum Erstellen des Workforce Identity-Pools auf Weiter.
gcloud
Führen Sie folgenden Befehl aus, um den Workforce Identity-Pool zu erstellen:
gcloud iam workforce-pools create WORKFORCE_POOL_ID \
--organization=ORGANIZATION_ID \
--display-name="DISPLAY_NAME" \
--description="DESCRIPTION" \
--session-duration=SESSION_DURATION \
--location=global
Ersetzen Sie Folgendes:
WORKFORCE_POOL_ID
: Eine ID, die Sie wählen, um den Google Cloud-Workforce-pool darzustellen. Informationen zum Formatieren der ID finden Sie in der API-Dokumentation im Abschnitt Abfrageparameter.ORGANIZATION_ID
: die numerische Organisations-ID Ihrer Google Cloud-Organisation.DISPLAY_NAME
: Optional. Ein Anzeigename für Ihren Workforce Identity-Pool.DESCRIPTION
: Optional. Beschreibung des Workforce Identity-Pools.SESSION_DURATION
: Optional. Die Sitzungsdauer, die bestimmt, wie lange die Google Cloud-Zugriffstokens, die Console (föderiert)-Anmeldesitzungen und die gcloud CLI-Anmeldungssitzungen aus diesem Workforce-Pool gültig sind. Die Dauer muss mehr als 15 Minuten (900s) und weniger als 12 Stunden (43.200s) betragen. Wenn keine Sitzungsdauer festgelegt ist, wird standardmäßig eine Dauer von einer Stunde (3.600 s) verwendet.
Neue Microsoft Entra-Anwendung registrieren
In diesem Abschnitt erfahren Sie, wie Sie eine Microsoft Entra-Anwendung mithilfe des Microsoft Azure-Portals erstellen.
Erstellen Sie einen neuen Clientschlüssel in der von Ihnen registrierten Microsoft Entra-Anwendung. Notieren Sie sich den Clientschlüssel.
Gewähren Sie Ihrer Microsoft Entra-Anwendung API-Berechtigungen, damit sie auf Nutzer- und Gruppeninformationen aus Active Directory zugreifen kann. So gewähren Sie Berechtigungen für die Microsoft Graph API:
- Wählen Sie in Ihrer Anwendung API-Berechtigungen aus.
- Klicken Sie unter Konfigurierte Berechtigungen auf Berechtigung hinzufügen.
- Wählen Sie im Dialogfeld API-Berechtigungen anfordern die Option Microsoft Graph aus.
- Wählen Sie Anwendungsberechtigungen aus.
- Gehen Sie im Dialogfeld Berechtigungen auswählen so vor:
- Geben Sie im Suchfeld
User.ReadBasic.All
ein. - Klicken Sie auf User.ReadBasic.All.
- Klicken Sie auf Berechtigungen hinzufügen.
- Geben Sie im Suchfeld
- Wählen Sie im Dialogfeld API-Berechtigungen anfordern die Option Microsoft Graph aus.
- Wählen Sie Anwendungsberechtigungen aus.
- Gehen Sie im Dialogfeld Berechtigungen auswählen so vor:
- Geben Sie im Suchfeld
GroupMember.Read.All
ein. - Klicken Sie auf GroupMember.Read.All.
- Klicken Sie auf Berechtigungen hinzufügen.
- Geben Sie im Suchfeld
- Klicken Sie unter Konfigurierte Berechtigungen auf Administratoreinwilligung erteilen für (Domainname).
- Wenn Sie zur Bestätigung aufgefordert werden, klicken Sie auf Ja.
So greifen Sie auf die Werte zu, die Sie später in dieser Anleitung zum Konfigurieren des Workforce-Poolanbieters konfigurieren müssen:
- Rufen Sie die Seite Übersicht der Microsoft Entra-Anwendung auf.
- Klicken Sie auf Endpunkte.
Beachten Sie die folgenden Werte:
- Client-ID: Die ID der Microsoft Entra-Anwendung, die Sie zuvor in dieser Anleitung registriert haben.
- Clientschlüssel: der Clientschlüssel, den Sie zuvor in dieser Anleitung generiert haben.
- Mandanten-ID: die Mandanten-ID der Microsoft Entra-Anwendung, die Sie zuvor in dieser Anleitung registriert haben.
- Aussteller-URI: der URI des OpenID Connect-Metadatendokuments ohne
/.well-known/openid-configuration
. Wenn beispielsweise die URL des OpenID Connect-Metadatendokumentshttps://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.well-known/openid-configuration
lautet, ist der Aussteller-URIhttps://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/
.
Workforce Identity-Anbieter erstellen
Führen Sie den folgenden Befehl aus, um den Anbieter zu erstellen:
gcloud iam workforce-pools providers create-oidc PROVIDER_ID \
--workforce-pool=WORKFORCE_POOL_ID \
--location=global \
--display-name=DISPLAY_NAME \
--issuer-uri=ISSUER_URI \
--client-id=https://analysis.windows.net/powerbi/connector/GoogleBigQuery \
--attribute-mapping=ATTRIBUTE_MAPPING \
--web-sso-response-type=id-token \
--web-sso-assertion-claims-behavior=only-id-token-claims \
--extra-attributes-issuer-uri=APP_ISSUER_URI \
--extra-attributes-client-id=APP_CLIENT_ID \
--extra-attributes-client-secret-value=APP_CLIENT_SECRET \
--extra-attributes-type=azure-ad-groups-mail \
--extra-attributes-filter=FILTER
Ersetzen Sie Folgendes:
PROVIDER_ID
: eine eindeutige Anbieter-ID Das Präfixgcp-
ist reserviert und kann nicht in einer Anbieter-ID verwendet werden.WORKFORCE_POOL_ID
: die ID des Mitarbeiteridentitätspools, mit dem Ihr IdP verbunden werden sollDISPLAY_NAME
: ein optionaler nutzerfreundlicher Anzeigename für den Anbieter.ISSUER_URI
: Wert des Aussteller-URI im Formathttps://sts.windows.net/TENANT_ID
. Ersetzen SieTENANT_ID
durch die Mandanten-ID, die Sie zuvor notiert haben.ATTRIBUTE_MAPPING
: eine Zuordnung der Gruppe und optional anderer Attribute aus der Microsoft Entra-Anforderung zu Google Cloud-Attributen, z. B.google.groups=assertion.groups, google.subject=assertion.sub
. Der Gruppe wird weiter unten in dieser Anleitung Zugriff auf BigQuery-Daten gewährt.APP_ISSUER_URI
: der Aussteller-URI der Microsoft Entra-Anwendung, die Sie zuvor notiert haben.APP_CLIENT_ID
: die Client-ID des Ausstellers, die Sie zuvor notiert haben.APP_CLIENT_SECRET
: der Clientschlüssel des Ausstellers, den Sie zuvor notiert haben.FILTER
: der Filter, mit dem bestimmte Assertions angefordert werden, die vom IdP übergeben wurden. Durch Angabe von--extra-attributes-type=azure-ad-groups-mail
filtert--extra-attributes-filter
nach der Gruppenanforderungen eines Nutzers, die vom IdP übergeben werden. Standardmäßig werden alle mit dem Nutzer verknüpften Gruppen abgerufen. Bei den verwendeten Gruppen müssen E-Mails und Sicherheit aktiviert sein. Weitere Informationen finden Sie unter Suchparameter $search verwenden. Es können maximal 100 Gruppen abgerufen werden.Im folgenden Beispiel wird nach Gruppen gefiltert, die mit E-Mail-Adressen von Nutzern verknüpft sind, die mit
gcp
beginnen: Im folgenden Beispiel werden Gruppen gefiltert, die mit Nutzern verknüpft sind, deren E-Mail-Adressen mit--extra-attributes-filter='"mail:gcp"'
gcp
beginnen und einen displayName enthalten, derexample
enthält:--extra-attributes-filter='"mail:gcp" AND "displayName:example"'
IAM-Richtlinien erstellen
In diesem Abschnitt erstellen Sie eine IAM-Zulassungsrichtlinie, die der zugeordneten Gruppe in dem Projekt, in dem Ihre BigQuery-Daten gespeichert sind, die Rolle "BigQuery-Datenbetrachter" (roles/bigquery.dataViewer
) zuweist. Mit der Richtlinie können alle Identitäten in der Gruppe Daten aus BigQuery-Tabellen und -Ansichten aufrufen, die im Projekt gespeichert sind.
Führen Sie folgenden Befehl aus, um die Richtlinie zu erstellen:
gcloud projects add-iam-policy-binding BIGQUERY_PROJECT_ID \
--role="roles/bigquery.dataViewer" \
--member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"
Ersetzen Sie Folgendes:
BIGQUERY_PROJECT_ID
: die Projekt-ID, unter der Ihre BigQuery-Daten und -Metadaten gespeichert sind.WORKFORCE_POOL_ID
: die ID des Workforce Identity-PoolsGROUP_ID
: die Gruppe, z. B.admin-group@example.com
Über Power BI Desktop auf BigQuery-Daten zugreifen
So greifen Sie von Power BI Desktop auf BigQuery-Daten zu:
- Öffnen Sie Power BI.
- Klicken Sie auf Daten abrufen.
- Klicken Sie auf Datenbank.
- Wählen Sie in der Liste der Datenbanken Google BigQuery (Microsoft Entra-ID) (Beta) aus.
- Klicken Sie auf Verbinden.
Füllen Sie die folgenden Pflichtfelder aus:
- Abrechnungsprojekt-ID: Die ID des Abrechnungsprojekts.
Zielgruppen-URI: Der Google Cloud-URI, der so formatiert ist:
//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/PROVIDER_ID
Ersetzen Sie Folgendes:
WORKFORCE_POOL_ID
: die ID des Workforce Identity-PoolsPROVIDER_ID
: die ID des Anbieters des Mitarbeiteridentitätspools.
Klicken Sie auf OK.
Klicken Sie auf Weiter.
Klicken Sie auf Daten auswählen.
Wenn Sie aufgefordert werden, sich anzumelden, verwenden Sie eine Microsoft Entra-Identität, die Mitglied der Gruppe ist.
Sie können jetzt Daten aus BigQuery in Power BI Desktop verwenden.
Über Power BI Web auf BigQuery-Daten zugreifen
So greifen Sie über Power BI Web auf BigQuery-Daten zu:
Gehen Sie zu Power BI Web.
Klicken Sie auf Leistungsabfrage, um eine neue Datenquelle hinzuzufügen.
Klicken Sie auf Daten abrufen.
Wählen Sie in der Liste die Option Google BigQuery (Microsoft Entra-ID) (Beta) aus.
Füllen Sie die folgenden Pflichtfelder aus:
Abrechnungsprojekt-ID: das Google Cloud-Abrechnungsprojekt
Zielgruppen-URI: Der Zielgruppen-URI, der so formatiert ist:
//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/PROVIDER_ID
Ersetzen Sie Folgendes:
WORKFORCE_POOL_ID
: die ID des Workforce Identity-PoolsPROVIDER_ID
: die ID des Anbieters des Mitarbeiteridentitätspools
Klicken Sie auf Anmeldedaten für die Verbindung > Authentifizierungsart.
Wählen Sie Organisationskonto aus.
Klicken Sie auf Anmelden.
Klicken Sie auf Weiter.
Klicken Sie auf Daten auswählen.
Sie können jetzt Daten aus BigQuery in Power BI Web verwenden.
Nächste Schritte
- Informationen zum Löschen von Workforce Identity Federation-Nutzern und ihren Daten finden Sie unter Workforce Identity Federation-Nutzer und ihre Daten löschen.
- Weitere Informationen zur Unterstützung von Google Cloud-Produkten für die Workforce Identity-Föderation finden Sie unter Identitätsföderation: Unterstützte Produkte und Einschränkungen.