Diese Seite gilt für Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen
Auf dieser Seite wird beschrieben, wie Sie Apigee Spaces in Ihrer Apigee-Organisation erstellen, um Identity and Access Management-Richtlinien (IAM) für Apigee-API-Ressourcen im großen Maßstab zu verwalten.
In diesem Leitfaden werden die erforderlichen Schritte für Folgendes beschrieben:
- Gruppenbereich erstellen
- Mitglieder und Rollen in einem Space verwalten
- Alle Spaces in einer Organisation auflisten
- Details zum Gruppenbereich abrufen
- Space aktualisieren
- Gruppenbereiche löschen
Weitere Informationen zu den Vorteilen der Verwendung von Apigee Spaces zum Verwalten Ihrer API-Ressourcen finden Sie unter Apigee Spaces.
Hinweise
Bevor Sie mit Spaces beginnen:
- Apigee bereitstellen. Prüfen Sie, ob die Apigee-Abo- oder „Pay as you go“-Organisation, die Sie verwenden möchten, bereitgestellt ist. Weitere Informationen zu den Schritten, die für die Bereitstellung von Apigee erforderlich sind, finden Sie unter Einführung in die Bereitstellung.
- Authentifizierungsdaten abrufen: Bevor Sie Befehle zum Erstellen und Verwalten von Spaces in der Befehlszeile ausführen, rufen Sie die Anmeldedaten für die
gcloud
-Authentifizierung mit dem folgenden Befehl ab:export TOKEN=$(gcloud auth print-access-token)
Erforderliche Rollen und Berechtigungen
Make sure that you have the following role or roles on the project: Apigee > Apigee Organization Admin
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
IAM aufrufen - Wählen Sie das Projekt aus.
- Klicken Sie auf Zugriffsrechte erteilen.
-
Geben Sie im Feld Neue Hauptkonten Ihre Nutzer-ID ein. Das ist in der Regel die E‑Mail-Adresse eines Google-Kontos.
- Wählen Sie in der Liste Rolle auswählen eine Rolle aus.
- Klicken Sie auf Weitere Rolle hinzufügen, wenn Sie weitere Rollen zuweisen möchten.
- Klicken Sie auf Speichern.
- ORG_NAME ist der Name Ihrer Apigee-Organisation.
- SPACE_NAME ist der Name und die ID des Space.
- DISPLAY_NAME ist der Name des Space, wie er in der Apigee-UI in der Cloud Console angezeigt werden soll. Wenn kein Anzeigename angegeben ist, wird der Name des Bereichs als Anzeigename verwendet.
- Liste der Mitglieder des Gruppenbereichs
- Die Rolle oder Liste der Rollen, die den Mitgliedern zugewiesen wurden
- ORG_NAME ist der Name der Apigee-Organisation.
- SPACE_NAME ist der Name des Gruppenbereichs.
- USER_EMAIL ist die E-Mail-Adresse eines Nutzers, den Sie dem Space hinzufügen.
- IAM_ROLE ist der Name der IAM-Rolle, die Sie dem Nutzer als Space-Mitglied zuweisen.
- ORG_NAME ist der Name der Apigee-Organisation.
- SPACE_NAME ist der Name des Gruppenbereichs.
- GROUP_EMAIL ist die E-Mail-Adresse einer Gruppe, die Sie dem Space hinzufügen.
- IAM_ROLE ist der Name der IAM-Rolle, die Sie dem Team als Space-Mitglied zuweisen.
- ORG_NAME ist der Name der Apigee-Organisation.
- SPACE_NAME ist der Name des Gruppenbereichs.
- ORG_NAME ist der Name der Apigee-Organisation.
- SPACE_NAME ist der Name des Gruppenbereichs.
- ORG_NAME ist der Name der Apigee-Organisation.
- SPACE_NAME ist der Name und die ID des Space.
- DISPLAY_NAME ist der neue Anzeigename für den Space.
- Weitere Informationen zu Apigee Space
- Weitere Informationen zum Verwalten von API-Ressourcen mit Apigee Spaces
- Lesen Sie die Dokumentation zur Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM).
Gruppenbereich erstellen
Zum Ausführen dieser Aufgabe benötigen Sie die Berechtigung apigee.spaces.create
.
Diese Berechtigung ist in der Rolle Apigee Organization Admin
enthalten.
Verwenden Sie den folgenden Befehl, um einen Space in Ihrer Apigee-Organisation zu erstellen:
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces" \ --data-raw '{ "name":"SPACE_NAME", "displayName":"DISPLAY_NAME", }'
Wobei:
Mit dem folgenden Befehl wird beispielsweise ein Space mit dem Namen rot in der Organisation acme erstellt:
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \ https://apigee.googleapis.com/v1/organizations/acme/spaces \ --data-raw '{ "name":"red", "displayName":"Red", }'
Nachdem Sie einen Space in Ihrer Organisation erstellt haben, sehen Organisationsmitglieder, die die Apigee-Benutzeroberfläche in der Cloud Console verwenden, den Space als verfügbaren Parameter, wenn sie API-Ressourcen in der Benutzeroberfläche erstellen. Wenn Sie sich in der Benutzeroberfläche Listen von API-Proxys, API-Produkten und freigegebenen Abläufen ansehen, wird der Space außerdem als Attribut für API-Ressourcen angezeigt, die diesem Space zugewiesen sind.
Gruppenbereiche.Mitglieder und Rollen in einem Space verwalten
Nachdem Sie einen Space erstellt haben, können Sie Teammitglieder hinzufügen und die erforderlichen IAM-Rollen zuweisen, um API-Ressourcen im Space zu erstellen und zu verwalten. Apigee-Nutzer können Ressourcen nur in Spaces erstellen und verwalten, in denen sie Teammitglieder mit den entsprechenden Berechtigungen sind. Da die IAM-Zugriffssteuerung auf Space-Ebene erfolgt, können Organisationsmitglieder nicht auf Apigee API-Ressourcen zugreifen, die zum Space gehören, oder diese verwalten, sofern sie nicht speziell dem Space hinzugefügt werden. Einen Überblick über die IAM-Rollen und ‑Berechtigungen, die zum Verwalten von Space-Ressourcen erforderlich sind, finden Sie unter Space-Ressourcen erstellen und verwalten.
Organisationsmitglied zu einem Gruppenbereich hinzufügen
Wenn ein Organisationsmitglied einem Gruppenbereich hinzugefügt wird, wird eine IAM-Richtlinienbindung für den Gruppenbereich erstellt, die zwei Argumente verwendet:
Zum Ausführen dieser Aufgabe benötigen Sie die Berechtigung apigee.spaces.setIamPolicy
.
Diese Berechtigung ist in der Rolle Apigee Organization Admin
enthalten.
Mit dem folgenden Befehl können Sie einem Space ein Organisationsmitglied hinzufügen und ihm eine IAM-Rolle zuweisen:
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME:setIamPolicy" -d \ '{ "policy":{ "bindings":[ { "members": ["user:USER_EMAIL"], "role": "roles/IAM_ROLE" } ] } }'
Wobei:
Mit diesem Befehl wird beispielsweise der Nutzer my-email@acme.com dem Space rot in der Organisation acme hinzugefügt und die IAM-Rolle apigee.spaceContentEditor
zugewiesen:
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/red:setIamPolicy" -d \ '{ "policy":{ "bindings":[ { "members": ["user:my-email@acme.com"], "role": "roles/apigee.spaceContentEditor" } ] } }'
Zusätzliche Rollen und Berechtigungen können für Mitglieder von Gruppenbereichen hinzugefügt werden, indem die IAM-Richtlinie für den Gruppenbereich aktualisiert wird. Wenn Sie die IAM-Richtlinie für einen Space aktualisieren möchten, verwenden Sie die in diesem Abschnitt beschriebene Methode setIamPolicy
mit der überarbeiteten Liste der gewünschten Rollen und Berechtigungen. Dadurch wird eine neue IAM-Richtlinie für den Space erstellt, in der Rollen und Berechtigungen entsprechend angepasst sind.
Team aus Mitgliedern einem Space hinzufügen
Alternativ können Sie einem Gruppenbereich ein Team von Mitgliedern hinzufügen und eine oder mehrere IAM-Rollen zuweisen. Mit dem folgenden Befehl können Sie einem Space ein Team von Mitgliedern hinzufügen und eine IAM-Rolle zuweisen:
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME:setIamPolicy" -d \ '{ "policy":{ "bindings":[ { "members": ["group:GROUP_EMAIL"], "role": "roles/IAM_ROLE" } ] } }'
Wobei:
Mit diesem Befehl wird beispielsweise die Gruppe acme-team@acme.com dem Space rot in der Organisation acme hinzugefügt und der Gruppe die Rolle apigee.spaceContentEditor
zugewiesen:
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/red:setIamPolicy" -d \ '{ "policy":{ "bindings":[ { "members": ["group:red-team@acme.com"], "role": "roles/apigee.spaceContentEditor" } ] } }'
Wie unter Organisationsmitglied einem Gruppenbereich hinzufügen beschrieben, enthält die IAM-Rolle apigee.spaceContentEditor
viele der Berechtigungen, die zum Verwalten von Gruppenbereichsressourcen erforderlich sind.
Möglicherweise müssen Sie Nutzern jedoch zusätzliche Rollen zuweisen, damit sie bestimmte Aufgaben ausführen können.
IAM-Richtlinienzuweisung für Spaces prüfen
Zum Ausführen dieser Aufgabe benötigen Sie die Berechtigung apigee.spaces.getIamPolicy
.
Diese Berechtigung ist in der Rolle Apigee Organization Admin
enthalten.
Mit dem folgenden Befehl können Sie prüfen, ob die IAM-Richtlinie für den Space richtig festgelegt ist:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME:getIamPolicy"
Wobei:
Mit dem folgenden Befehl wird beispielsweise geprüft, ob die IAM-Richtlinie für den Space rot in der Organisation acme richtig festgelegt ist:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/red:getIamPolicy"
Die Ausgabe des Befehls gibt die aktuelle IAM-Richtlinie für den Space zurück und sollte in etwa so aussehen:
{ "version": "0", "bindings": [ { "role": "roles/apigee.spaceContentEditor", "members": [ "group:red-team@acme.com" ] } ] }
In diesem Beispiel weist die IAM-Richtlinie für den Space Mitgliedern des Space die Rolle apigee.spaceContentEditor
zu, in diesem Fall Mitgliedern der Gruppe red-team@acme.com.
Die Mitglieder des Teams rot sind die einzigen Mitglieder der Organisation, die Zugriff auf den Space rot haben. Das bedeutet, dass nur die Mitglieder des roten Teams API-Ressourcen im roten Space erstellen und verwalten können. Wenn Mitglieder eines anderen Organisationsteams, z. B. team-blue@acme.com, versuchen, auf einen API-Proxy zuzugreifen, der im roten Space erstellt wurde, wird die folgende Fehlermeldung angezeigt:
{ "error": { "code": 403, "message": "Permission denied on resource \"organizations\/acme\/apis\/proxy-1\" (or it may not exist).", "status": "PERMISSION_DENIED" } }
Mitglieder aus einem Space entfernen
Wenn Sie Mitglieder oder eine Gruppe von Mitgliedern aus einem Space entfernen möchten, müssen Sie eine neue IAM-Richtlinie für den Space mit einer überarbeiteten Liste der Mitglieder oder Gruppen festlegen. Mit der Methode setIamPolicy
wird eine neue IAM-Richtlinie für den Space erstellt, in der Rollen und Mitglieder entsprechend angepasst sind.
Wenn Sie beispielsweise die Mitglieder des blauen Space aktualisieren möchten, können Sie zuerst die aktuelle IAM-Richtlinie mit dem folgenden Befehl prüfen:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/blue:getIamPolicy"
Die Ausgabe des Befehls gibt die aktuelle IAM-Richtlinie für den Space zurück und sollte in etwa so aussehen:
{ "version": "0", "bindings": [ { "role": "roles/apigee.spaceContentEditor", "members": [ "group: blue-team@acme.com", "users: user-a@acme.com, user-b@acme.com, user-c@acme.com" ] } ] }
Verwenden Sie den folgenden Befehl, um user-b@acme.com aus dem Space zu entfernen:
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/blue:setIamPolicy" -d \ '{ "policy":{ "bindings":[ { "members": [ "group:blue-team@acme.com", "users: user-a@acme.com, user-c@acme.com" ] "role": "roles/apigee.spaceContentEditor" } ] } }'
Die neue IAM-Richtlinie für den Space enthält user-b@acme.com nicht mehr.
Wenn Sie ein Mitglied aus einer Gruppe entfernen möchten, die in einem Space enthalten ist, entfernen Sie das Mitglied zuerst aus der Gruppe und führen Sie dann den Befehl setIamPolicy noch einmal aus, um die IAM-Richtlinie für den Space mit der korrekten Mitgliedschaft für den E-Mail-Alias der Gruppe zu aktualisieren.
Alle Spaces in einer Organisation auflisten
Zum Ausführen dieser Aufgabe benötigen Sie die Berechtigung apigee.spaces.list
.
Diese Berechtigung ist in der Rolle Apigee Organization Admin
enthalten.
Verwenden Sie den folgenden Befehl, um alle Spaces in einer Apigee-Organisation aufzulisten:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces"
Wo ORG_NAME der Name der Apigee-Organisation ist.
Mit dem folgenden Befehl werden beispielsweise alle Spaces in der Organisation acme aufgelistet:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces"
Dieser Befehl gibt in etwa Folgendes zurück:
{ "spaces": [ { "name": "red", "createTime": "2024-08-02T23:26:03.001512Z", "updateTime": "2024-08-02T23:26:03.001512Z" }, { "name": "blue", "createTime": "2024-08-02T00:34:54.159331Z", "updateTime": "2024-08-02T00:34:54.159331Z" } ] }
Details zum Gruppenbereich abrufen
Zum Ausführen dieser Aufgabe benötigen Sie die Berechtigung apigee.spaces.get
.
Diese Berechtigung ist in der Rolle Apigee Organization Admin
enthalten.
Verwenden Sie den folgenden Befehl, um Details zum Space abzurufen:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME"
Wobei:
Mit dem folgenden Befehl werden beispielsweise Details zum roten Space in der Organisation acme abgerufen:
curl -X GET -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/red"
Dieser Befehl gibt in etwa Folgendes zurück:
{ "name": "red", "createTime": "2024-08-02T23:26:03.001512Z", "updateTime": "2024-08-02T23:26:03.001512Z" }
Space aktualisieren
Zum Ausführen dieser Aufgabe benötigen Sie die Berechtigung apigee.spaces.update
.
Diese Berechtigung ist in der Rolle Apigee Organization Admin
enthalten.
Verwenden Sie den folgenden Befehl, um einen Space in Ihrer Apigee-Organisation zu aktualisieren:
curl -X PATCH -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME" \ --data-raw '{ "displayName":"DISPLAY_NAME" }'
Wobei:
Mit dem folgenden Befehl wird beispielsweise der Anzeigename des roten Space in der Organisation acme aktualisiert:
curl -X PATCH -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/red" -d \ '{ "displayName": "Red team space" }'
Gruppenbereiche löschen
Zum Ausführen dieser Aufgabe benötigen Sie die Berechtigung apigee.spaces.delete
.
Diese Berechtigung ist in der Rolle Apigee Organization Admin
enthalten. Bevor Sie einen Space löschen, müssen Sie alle Ressourcen im Space löschen.
Verwenden Sie den folgenden Befehl, um einen Space in Ihrer Apigee-Organisation zu löschen:
curl -X DELETE -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME"
Mit dem folgenden Befehl wird beispielsweise der rote Space in der Organisation acme gelöscht:
curl -X DELETE -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/acme/spaces/red"
Wenn Sie versuchen, einen Space mit aktiven Ressourcen zu löschen, wird der folgende Fehler angezeigt:
{ "error": { "code": 400, "message": "Space \"red\" has resources associated with it. Please delete the resources before deleting the space.", "status": "FAILED_PRECONDITION" } }
Löschen oder verschieben Sie die Ressourcen im Space, bevor Sie versuchen, den Space zu löschen.