Auf Attribute zur Nutzeridentität zugreifen
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Nutzer verwenden Ihren Community-Connector, um ihre eigenen Datenquellen zu erstellen. Bei diesen Datenquellen kann der Connector auf die Identität des betreffenden Nutzers zugreifen.
Abhängig von den Anmeldedaten für die Datenquelle kann der aktive Nutzer der Ersteller der Datenquelle (Inhaber-Anmeldedaten) oder der Betrachter (Betrachter-Anmeldedaten) sein.
Vorteile
- Sie können im Namen des Nutzers auf Google-Dienste und -APIs zugreifen.
- Sie können eine benutzerdefinierte Zugriffssteuerung implementieren, um sicherzustellen, dass nur relevante Daten angezeigt werden.
- Sie können die User Experience für den jeweiligen Nutzer anpassen.
Implementierungsschritte
Auf das OAuth-Token des Nutzers zugreifen
Der Connector kann im Namen des Nutzers auf Google-Dienste und -APIs zugreifen, indem er das OAuth-Token des Nutzers weitergibt. Verwenden Sie ScriptApp.getOAuthToken()
, um auf das OAuth-Token des aktiven Nutzers in Ihrem Connector zuzugreifen. Siehe Referenz zu getOAuthToken.
Das Token enthält die Autorisierungsbereiche, die während der Connector-Autorisierung angegeben wurden.
Bei den meisten Connectors erkennt Apps Script automatisch, welche Bereiche benötigt werden, indem das Skript geparst und verarbeitet wird. Sie können sich jederzeit die Bereiche ansehen, die ein Connector verwendet. Sie können Bereiche auch explizit in Ihrem Manifest mithilfe von URL-Strings festlegen. Wenn Sie im Namen des Nutzers auf einen Google-Dienst oder eine Google API zugreifen möchten, fügen Sie den entsprechenden Bereich in das Manifest ein.
Zugriff auf die E-Mail-Adresse des Nutzers
In Ihrem Code können Sie den aktuell aktiven Nutzer mit Session.getEffectiveUser().getEmail()
identifizieren. Siehe getEffectiveUser-Referenz.
Wenn Sie diesen Code hinzufügen, wird dem Connector automatisch der Autorisierungsbereich https://www.googleapis.com/auth/userinfo.email
hinzugefügt.
Beispiel: Google APIs mit dem OAuth-Token des Nutzers aufrufen
- Der Google Fit-Connector ruft die Daten des betreffenden Nutzers aus der Google Fit API ab. Beim Aufrufen der API wird das OAuth-Token des aktiven Nutzers übergeben. Implementierungsdetails finden Sie im Quellcode.
- Der Firestore-Connector ruft mit Cloud Resource Manager eine Liste der Projekte für den aktiven Nutzer ab. Dieser Connector übergibt auch das OAuth-Token des aktiven Nutzers. Implementierungsdetails finden Sie im Quellcode.
Beispiel: isAdminUser()
basierend auf der E-Mail-Adresse
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-07-25 (UTC).
[null,null,["Zuletzt aktualisiert: 2025-07-25 (UTC)."],[[["\u003cp\u003eCommunity Connectors allow you to build data sources that can access the effective user's identity, enabling personalized data retrieval.\u003c/p\u003e\n"],["\u003cp\u003eDepending on the data source credentials, the effective user can be either the data source creator or the report viewer.\u003c/p\u003e\n"],["\u003cp\u003eYour connector can leverage the user's OAuth token to access Google services and APIs on their behalf for custom data integrations.\u003c/p\u003e\n"],["\u003cp\u003eYou can tailor the user experience by implementing custom access control and using the user's email address for identification.\u003c/p\u003e\n"]]],[],null,["# Access user identity properties\n\nUsers will use your Community Connector to create their own data sources. For\nthese data sources, your connector can access the effective user's identity.\nDepending on the [Data source credentials](https://support.google.com/looker-studio/answer/6371135), the effective user can be the data\nsource creator (Owner's credentials) or the report viewer (Viewer's\ncredentials).\n\nBenefits\n--------\n\n- You can access Google services and APIs on behalf of the user.\n- You can implement custom access control to ensure only relevant data is being displayed.\n- You can customize the user experience for the effective user.\n\nImplementation steps\n--------------------\n\n### Accessing the user OAuth token\n\nYour connector can access Google services and APIs on behalf of the user by\npassing the user's OAuth token. To access the effective user's OAuth token in\nyour connector, use `ScriptApp.getOAuthToken()`. See [getOAuthToken reference](/apps-script/reference/script/script-app#getoauthtoken).\nThis token will include the [Authorization scopes](/apps-script/concepts/scopes) included during the connector\nauthorization.\n\nFor most connectors, Apps Script automatically detects what scopes are needed by\nparsing and processing the script. You can [view the scopes](/apps-script/concepts/scopes#viewing_scopes) a connector uses at\nany time. You can also [set scopes explicitly](/apps-script/concepts/scopes#setting_explicit_scopes) in your [manifest](/apps-script/concepts/manifests) using URL\nstrings. If you want to access a Google service or API on behalf of the user,\ninclude that relevant scope in the manifest.\n\n### Accessing the user email address\n\nIn your code, you can identify the current effective user with\n`Session.getEffectiveUser().getEmail()`. See [getEffectiveUser reference](/apps-script/reference/base/session#getEffectiveUser).\nAdding this code will automatically add the\n`https://www.googleapis.com/auth/userinfo.email` authorization scope to your\nconnector.\n\nExample: Calling Google APIs with user OAuth token\n--------------------------------------------------\n\n- The [Google Fit connector](https://lookerstudio.google.com/datasources/create?connectorId=AKfycbwFrL1OLXR3wqfnxowGFF3w3D4eq-54vAwjxDWcWRjiZMxX7jhII_1Ddx6y76GDHrxIew) fetches data from the Google Fit API for the effective user. While calling the API, it passes the effective user's OAuth token. See [the source code](https://github.com/googledatastudio/community-connectors/blob/master/google-fit/src/GoogleFit.js#L245) for implementation details.\n- The [Firestore connector](https://github.com/googledatastudio/community-connectors/tree/master/firestore) uses the Cloud Resource Manager to get a list of projects for the effective user. This connector also passes the effective user's OAuth token. See [the source code](https://github.com/googledatastudio/community-connectors/blob/master/firestore/src/GoogleCloud.gs#L30) for implementation details.\n\nExample: `isAdminUser()` based on email address\n-----------------------------------------------\n\n- The [Chrome UX Connector](http://g.co/chromeuxdash) maintains a list of admin users. It uses `getEffectiveUser()` and compares the effective user against the list to determine whether the effective user is an admin or not. See [implementation of `getEffectiveUser`](https://github.com/googledatastudio/community-connectors/blob/master/chrome-ux-report/src/Code.js#L581)."]]