In dieser Anleitung wird beschrieben, wie Sie einer bestimmten Gemini Enterprise Agent Platform Workbench-Instanz Zugriff gewähren. Informationen zum Verwalten des Zugriffs auf Gemini Enterprise Agent Platform-Ressourcen finden Sie unter der Seite Zugriffssteuerung für Agent Platform.
Sie gewähren einer Agent Platform Workbench-Instanz Zugriff, indem Sie eine IAM-Richtlinie (Identity and Access Management) für die Instanz festlegen. Die Richtlinie bindet ein oder mehrere Hauptkonten, z. B. einen Nutzer oder ein Dienstkonto, an eine oder mehrere Rollen. Jede Rolle enthält eine Reihe von Berechtigungen, mit denen das Hauptkonto mit der Instanz interagieren kann.
Sie können Zugriff auf eine Instanz statt auf eine übergeordnete Ressource wie ein Projekt, einen Ordner oder eine Organisation gewähren, um das Prinzip der geringsten Berechtigung anzuwenden.
Wenn Sie Zugriff auf eine übergeordnete Ressource gewähren (z. B. auf ein Projekt), erteilen Sie implizit auch Zugriff auf alle ihr untergeordneten Ressourcen, etwa auf alle Instanzen in diesem Projekt. Sie können den Zugriff auf Ressourcen auch beschränken. Legen Sie dazu die IAM-Richtlinien nach Möglichkeit auf untergeordneten Ebenen fest, anstatt auf Projektebene oder darüber.
Allgemeine Informationen zum Gewähren, Ändern und Entziehen des Zugriffs auf Ressourcen, die nichts mit Agent Platform Workbench zu tun haben, z. B. auf ein Google Cloud Projekt, finden Sie in der IAM-Dokumentation unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Zugriffsbeschränkungen
Der Zugriff auf eine Instanz kann eine Vielzahl von Funktionen umfassen, je nach der Rolle, die Sie dem Hauptkonto zuweisen. Beispielsweise können Sie einem Hauptkonto die Möglichkeit geben, den Systemstatus einer Instanz zu starten, zu stoppen, zu aktualisieren und zu überwachen. Eine vollständige Liste der verfügbaren IAM-Berechtigungen finden Sie unter Vordefinierte IAM-Rollen für Agent Platform Workbench.
Selbst wenn einem Hauptkonto vollständiger Zugriff auf eine Agent Platform Workbench-Instanz gewährt wird, kann die JupyterLab-Schnittstelle der Instanz nicht verwendet werden. Informationen zum Gewähren des Zugriffs auf die JupyterLab-Schnittstelle finden Sie unter Zugriff auf die JupyterLab-Schnittstelle einer Instanz verwalten.
Zugriff auf Agent Platform Workbench-Instanzen gewähren
Wenn Sie Nutzern Zugriff auf eine bestimmte Agent Platform Workbench-Instanz gewähren möchten, legen Sie eine IAM-Richtlinie für die Instanz fest.
gcloud
Wenn Sie einem Hauptkonto auf
einer Agent Platform Workbench-Instanz eine Rolle zuweisen möchten, verwenden Sie den
get-iam-policy
Befehl, um die aktuelle Richtlinie abzurufen. Bearbeiten Sie dann den Zugriff auf die aktuelle Richtlinie und aktualisieren Sie dann mit dem
set-iam-policy
Befehl die Richtlinie für die Instanz.
Aktuelle Richtlinie abrufen
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
INSTANCE_NAME: durch den Namen der InstanzPROJECT_ID: Ihre Google Cloud Projekt-IDLOCATION: Zone, in der sich Ihre Instanz befindet.
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud workbench instances get-iam-policy INSTANCE_NAME \ --project=PROJECT_ID \ --location=LOCATION
Windows (PowerShell)
gcloud workbench instances get-iam-policy INSTANCE_NAME ` --project=PROJECT_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud workbench instances get-iam-policy INSTANCE_NAME ^ --project=PROJECT_ID ^ --location=LOCATION
{
"bindings": [
{
"role": "roles/notebooks.viewer",
"members": [
"user:email@example.com"
]
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
Richtlinie bearbeiten
Bearbeiten Sie die Richtlinie mit einem Texteditor, um Hauptkonten und die zugehörigen Rollen hinzuzufügen oder zu entfernen. Beispiel: Fügen Sie der Richtlinie im Abschnitt
"bindings"die folgende neue Bindung hinzu, umeve@example.comdie Rollenotebooks.adminzu gewähren:{ "role": "roles/notebooks.admin", "members": [ "user:eve@example.com" ] }Nach dem Hinzufügen der neuen Bindung kann die Richtlinie in etwa so aussehen:
{ "bindings": [ { "role": "roles/notebooks.viewer", "members": [ "user:email@example.com" ] }, { "role": "roles/notebooks.admin", "members": [ "user:eve@example.com" ] } ], "etag": "BwWWja0YfJA=", "version": 3 }Speichern Sie die aktualisierte Richtlinie in einer Datei mit dem Namen
request.json.
Richtlinie für die Instanz aktualisieren
Geben Sie im Anfragetext die aktualisierte IAM-Richtlinie aus dem vorherigen Schritt verschachtelt in einem "policy"-Abschnitt ein.
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
INSTANCE_NAME: durch den Namen der InstanzPROJECT_ID: Ihre Google Cloud Projekt-IDLOCATION: Zone, in der sich Ihre Instanz befindet.
Speichern Sie den folgenden Inhalt in einer Datei mit dem Namen request.json:
{ "policy": { "bindings": [ { "role": "roles/notebooks.viewer", "members": [ "user:email@example.com" ] }, { "role": "roles/notebooks.admin", "members": [ "user:eve@example.com" ] } ], "etag": "BwWWja0YfJA=", "version": 3 } }
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud workbench instances set-iam-policy INSTANCE_NAME \ --project=PROJECT_ID \ --location=LOCATION \ request.json --format=json
Windows (PowerShell)
gcloud workbench instances set-iam-policy INSTANCE_NAME ` --project=PROJECT_ID ` --location=LOCATION ` request.json --format=json
Windows (cmd.exe)
gcloud workbench instances set-iam-policy INSTANCE_NAME ^ --project=PROJECT_ID ^ --location=LOCATION ^ request.json --format=json
Zugriff auf die JupyterLab-Schnittstelle gewähren
Wenn Sie einem Hauptkonto Zugriff auf eine Agent Platform Workbench-Instanz gewähren, kann nicht die JupyterLab-Schnittstelle der Instanz verwendet werden. Informationen zum Gewähren des Zugriffs auf die JupyterLab-Schnittstelle finden Sie unter Zugriff auf die JupyterLab-Schnittstelle einer Agent Platform Workbench-Instanz verwalten.
API
Wenn Sie einem Hauptkonto auf
einer Agent Platform Workbench-Instanz eine Rolle zuweisen möchten, verwenden Sie die
getIamPolicy
Methode, um die aktuelle Richtlinie abzurufen.
Ändern Sie den Zugriff auf die aktuelle Richtlinie und verwenden Sie die
setIamPolicy
Methode, um die Richtlinie für die Instanz zu aktualisieren.
Aktuelle Richtlinie abrufen
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID: Ihre Google Cloud Projekt-IDLOCATION: Zone, in der sich Ihre Instanz befindet.INSTANCE_NAME: durch den Namen der Instanz
HTTP-Methode und URL:
GET https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_NAME:getIamPolicy
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_NAME:getIamPolicy"
PowerShell
Führen Sie diesen Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_NAME:getIamPolicy" | Select-Object -Expand Content
{
"bindings": [
{
"role": "roles/notebooks.viewer",
"members": [
"user:email@example.com"
]
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
Richtlinie bearbeiten
Bearbeiten Sie die Richtlinie mit einem Texteditor, um Hauptkonten und die zugehörigen Rollen hinzuzufügen oder zu entfernen. Beispiel: Fügen Sie der Richtlinie im Abschnitt "bindings" die folgende neue Bindung hinzu, um eve@example.com die Rolle notebooks.admin zu gewähren:
{
"role": "roles/notebooks.admin",
"members": [
"user:eve@example.com"
]
}
Nach dem Hinzufügen der neuen Bindung kann die Richtlinie in etwa so aussehen:
{
"bindings": [
{
"role": "roles/notebooks.viewer",
"members": [
"user:email@example.com"
]
},
{
"role": "roles/notebooks.admin",
"members": [
"user:eve@example.com"
]
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
Richtlinie für die Instanz aktualisieren
Geben Sie im Anfragetext die aktualisierte IAM-Richtlinie aus dem vorherigen Schritt verschachtelt in einem "policy"-Abschnitt ein.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID: Ihre Google Cloud Projekt-IDLOCATION: Zone, in der sich Ihre Instanz befindet.INSTANCE_NAME: durch den Namen der Instanz
HTTP-Methode und URL:
POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_NAME:setIamPolicy
JSON-Text der Anfrage:
{
"policy": {
"bindings": [
{
"role": "roles/notebooks.viewer",
"members": [
"user:email@example.com"
]
},
{
"role": "roles/notebooks.admin",
"members": [
"user:eve@example.com"
]
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
}
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_NAME:setIamPolicy"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_NAME:setIamPolicy" | Select-Object -Expand Content
Sie sollten einen erfolgreichen Statuscode (2xx) und eine leere Antwort als Ausgabe erhalten.
Zugriff auf die JupyterLab-Schnittstelle gewähren
Wenn Sie einem Hauptkonto Zugriff auf eine Agent Platform Workbench-Instanz gewähren, kann nicht die JupyterLab-Schnittstelle der Instanz verwendet werden. Informationen zum Gewähren des Zugriffs auf die JupyterLab-Schnittstelle finden Sie unter Zugriff auf die JupyterLab-Schnittstelle einer Instanz verwalten.
Nächste Schritte
Informationen zur Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) und dazu, wie IAM-Rollen beim Gewähren und Einschränken des Zugriffs helfen können, finden Sie in der IAM-Dokumentation.
Informationen zu den IAM-Rollen, die für Agent Platform Workbench verfügbar sind.
Mehr über das Erstellen und Verwalten benutzerdefinierter Rollen erfahren
Informationen zum Gewähren des Zugriffs auf andere Google-Ressourcen finden Sie unter Zugriff auf andere Ressourcen verwalten.