Bulk-Änderungen an Dienstperimetern vornehmen

Mit Access Context Manager können Sie Bulk-Aktualisierungen an Ressourcen vornehmen, die zur Zugriffsrichtlinie Ihrer Organisation gehören, z. B. an Zugriffsebenen und Dienstperimetern. Änderungen an Ressourcen werden nur übernommen, wenn alle Teile des Bulk-Vorgangs erfolgreich sind.

In diesem Thema wird nur die Bulk-Ersetzung von Dienstperimetern beschrieben. Weitere Informationen zur Bulk-Ersetzung von Zugriffsebenen finden Sie in der Dokumentation zu Access Context Manager.

Hinweise

Da Bulk-Vorgänge alle Dienstperimeter Ihrer Organisation betreffen, können Sie eine vollständige Liste Ihrer Perimeter abrufen. Sie können diese Liste auch als YAML formatieren und verwenden, um Bulk-Änderungen an Ihren Perimetern vorzunehmen.

Eine formatierte Liste von Dienstperimetern finden Sie unter Dienstperimeter (formatiert) auflisten.

Bulk-Ersetzung von Dienstperimetern durchführen

Im folgenden Abschnitt wird beschrieben, wie Sie Bulk-Ersetzungen Ihrer Dienstperimeter durchführen.

gcloud

Verwenden Sie den Befehl replace-all, um eine Bulk-Ersetzung aller Dienstperimeter durchzuführen.

gcloud access-context-manager perimeters replace-all \
  --source-file=FILE \
  --etag=ETAG \
  [--policy=POLICY_NAME]

Wobei:

  • FILE ist der Name einer YAML-Datei, in der die neuen Einstellungen für Ihre vorhandenen Dienstperimeter definiert sind.

    Beispiel:

    - name: accessPolicies/11271009391/servicePerimeters/storage_perimeter
      title: Storage Perimeter
      description: Perimeter to protect Storage resources.
      perimeterType: PERIMETER_TYPE_REGULAR
      status:
        restrictedServices:
        - storage.googleapis.com
    - name: accessPolicies/11271009391/servicePerimeters/bigquery_perimeter
      title: BigQuery Perimeter
      description: Perimeter to protect BigQuery resources.
      perimeterType: PERIMETER_TYPE_REGULAR
      status:
        restrictedServices:
        - bigquery.googleapis.com
    

    Weitere Informationen zum Formatieren der YAML-Datei finden Sie in der JSON-Struktur des ServicePerimeterConfig-Objekts von Access Context Manager.

  • ETAG (optional) ist ein String, der die Zielversion der Zugriffsrichtlinie Ihrer Organisation darstellt. Wenn Sie kein ETag einfügen, wird der Ersetzungsvorgang auf die neueste Version der Zugriffsrichtlinie Ihrer Organisation ausgerichtet.

    Listen Sie Ihre Zugriffsrichtlinien auf (list), um das aktuelle ETag Ihrer Zugriffsrichtlinie zu erhalten.

  • POLICY_NAME ist der Name der Zugriffsrichtlinie Ihrer Organisation. Dieser Wert ist nur erforderlich, wenn Sie keine Standardzugriffsrichtlinie festgelegt haben.

API

Rufen Sie servicePerimeters.replaceAll auf, um eine Bulk-Ersetzung aller Dienstperimeter durchzuführen.

POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/servicePerimeters.replaceAll?alt=json

Wobei:

  • POLICY_NAME ist der Name der Zugriffsrichtlinie Ihrer Organisation.

Anfragetext

Der Anfragetext muss eine Liste von ServicePerimeterConfig-Objekten enthalten, die die gewünschten Änderungen angeben.

Optional können Sie für die Ausrichtung auf eine bestimmte Version der Zugriffsrichtlinie Ihrer Organisation ein ETag einfügen. Wenn Sie kein ETag einfügen, wird der Ersetzungsvorgang auf die neueste Version der Zugriffsrichtlinie Ihrer Organisation ausgerichtet.

Beispiel:

{
  "servicePerimeters": [
    object (ServicePerimeterConfig),
    object (ServicePerimeterConfig),
    ...
  ]
  "etag": string
}

Antworttext

Bei erfolgreichem Ausführen enthält der Antworttext für den Aufruf eine Operation-Ressource mit Informationen zum Post-Vorgang.

Beispielantwort:

{
  "name": "operations/accessPolicies/11271009391/replacePerimeters/1583523447707087",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse",
    "servicePerimeters": [
      {
        "name": "accessPolicies/11271009391/servicePerimeters/storage_perimeter",
        "title": "Storage Perimeter",
        "description": "Perimeter to protect Storage resources.",
        "status": {
          "accessLevels": [
            "accessPolicies/11271009391/accessLevels/corpnet_access"
          ],
          "restrictedServices": [
            "bigtable.googleapis.com"
          ]
        }
      },
      {
        "name": "accessPolicies/11271009391/servicePerimeters/storage_perimeter",
        "title": "BigQuery Perimeter",
        "description": "Perimeter to protect BigQuery resources.",
        "status": {
          "accessLevels": [
            "accessPolicies/11271009391/accessLevels/prodnet_access"
          ],
          "restrictedServices": [
            "bigtable.googleapis.com"
          ]
        }
      }
    ]
  }
}