Skip to main content
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Richten Sie eine Datenbrokergruppe ein, um einen externen HashiCorp Vault in NetApp Copy and Sync zu verwenden

Beitragende amgrissino

Wenn Sie eine Synchronisierungsbeziehung erstellen, die Amazon S3-, Azure- oder Google Cloud-Anmeldeinformationen erfordert, müssen Sie diese Anmeldeinformationen über die NetApp Copy and Sync-Benutzeroberfläche oder API angeben. Eine Alternative besteht darin, die Datenbrokergruppe so einzurichten, dass sie direkt von einem externen HashiCorp-Tresor auf die Anmeldeinformationen (oder Geheimnisse) zugreift.

Diese Funktion wird durch die Copy and Sync-API mit Synchronisierungsbeziehungen unterstützt, die Amazon S3-, Azure- oder Google Cloud-Anmeldeinformationen erfordern.

EinsBereiten Sie den Tresor vor

Bereiten Sie den Tresor vor, um der Datenbrokergruppe Anmeldeinformationen bereitzustellen, indem Sie die URLs einrichten. Die URLs zu den Geheimnissen im Tresor müssen mit Creds enden.

ZweiVorbereiten der Datenbrokergruppe

Bereiten Sie die Datenbrokergruppe darauf vor, Anmeldeinformationen aus dem externen Tresor abzurufen, indem Sie die lokale Konfigurationsdatei für jeden Datenbroker in der Gruppe ändern.

DreiErstellen einer Synchronisierungsbeziehung mithilfe der API

Nachdem nun alles eingerichtet ist, können Sie einen API-Aufruf senden, um eine Synchronisierungsbeziehung zu erstellen, die Ihren Tresor zum Abrufen der Geheimnisse verwendet.

Bereiten Sie den Tresor vor

Sie müssen Copy and Sync die URL zu den Geheimnissen in Ihrem Tresor bereitstellen. Bereiten Sie den Tresor vor, indem Sie diese URLs einrichten. Sie müssen URLs zu den Anmeldeinformationen für jede Quelle und jedes Ziel in den Synchronisierungsbeziehungen einrichten, die Sie erstellen möchten.

Die URL muss wie folgt aufgebaut sein:

/<path>/<requestid>/<endpoint-protocol>Creds

Weg

Der Präfixpfad zum Geheimnis. Dies kann jeder für Sie eindeutige Wert sein.

Anforderungs-ID

Eine Anforderungs-ID, die Sie generieren müssen. Sie müssen die ID in einem der Header in der API-POST-Anforderung angeben, wenn Sie die Synchronisierungsbeziehung erstellen.

Endpunktprotokoll

Eines der folgenden Protokolle, wie definiert "in der Post-Relationship-V2-Dokumentation" : S3, AZURE oder GCP (jeweils in Großbuchstaben).

Credits

Die URL muss mit Creds enden.

Beispiele

Die folgenden Beispiele zeigen URLs zu Geheimnissen.

Beispiel für die vollständige URL und den Pfad für Quellanmeldeinformationen

http://example.vault.com:8200/my-path/all-secrets/hb312vdasr2/S3Creds

Wie Sie im Beispiel sehen können, lautet der Präfixpfad /my-path/all-secrets/, die Anforderungs-ID ist hb312vdasr2 und der Quellendpunkt ist S3.

Beispiel für die vollständige URL und den Pfad für Zielanmeldeinformationen

http://example.vault.com:8200/my-path/all-secrets/n32hcbnejk2/AZURECreds

Der Präfixpfad ist /my-path/all-secrets/, die Anforderungs-ID ist n32hcbnejk2 und der Zielendpunkt ist Azure.

Vorbereiten der Datenbrokergruppe

Bereiten Sie die Datenbrokergruppe darauf vor, Anmeldeinformationen aus dem externen Tresor abzurufen, indem Sie die lokale Konfigurationsdatei für jeden Datenbroker in der Gruppe ändern.

Schritte
  1. Stellen Sie eine SSH-Verbindung zu einem Datenbroker in der Gruppe her.

  2. Bearbeiten Sie die Datei local.json, die sich in /opt/netapp/databroker/config befindet.

  3. Setzen Sie „enable“ auf true und legen Sie die Konfigurationsparameterfelder unter external-integrations.hashicorp wie folgt fest:

    ermöglicht
    • Gültige Werte: true/false

    • Typ: Boolean

    • Standardwert: false

    • Wahr: Der Datenbroker erhält Geheimnisse aus Ihrem eigenen externen HashiCorp Vault

    • Falsch: Der Datenbroker speichert Anmeldeinformationen in seinem lokalen Tresor

    URL
    • Typ: Zeichenfolge

    • Wert: Die URL zu Ihrem externen Tresor

    Weg
    • Typ: Zeichenfolge

    • Wert: Präfixieren Sie den Pfad zum Geheimnis mit Ihren Anmeldeinformationen

    Ablehnen – nicht autorisiert
    • Legt fest, ob der Datenbroker nicht autorisierte externe Tresore ablehnen soll

    • Typ: Boolean

    • Standard: false

    Authentifizierungsmethode
    • Die Authentifizierungsmethode, die der Datenbroker für den Zugriff auf Anmeldeinformationen aus dem externen Tresor verwenden soll

    • Typ: Zeichenfolge

    • Gültige Werte: „aws-iam“ / „role-app“ / „gcp-iam“

    Rollenname
    • Typ: Zeichenfolge

    • Ihr Rollenname (falls Sie aws-iam oder gcp-iam verwenden)

    Geheim-ID und Root-ID
    • Typ: Zeichenfolge (falls Sie die App-Rolle verwenden)

    Namensraum
    • Typ: Zeichenfolge

    • Ihr Namespace (X-Vault-Namespace-Header, falls erforderlich)

  4. Wiederholen Sie diese Schritte für alle anderen Datenbroker in der Gruppe.

Beispiel für die AWS-Rollenauthentifizierung

{
          “external-integrations”: {
                  “hashicorp”: {
                         “enabled”: true,
                         “url”: “https://example.vault.com:8200”,
                         “path”: ““my-path/all-secrets”,
                         “reject-unauthorized”: false,
                         “auth-method”: “aws-role”,
                         “aws-role”: {
                               “role-name”: “my-role”
                         }
                }
       }
}

Beispiel für die GCP-IAM-Authentifizierung

{
"external-integrations": {
    "hashicorp": {
      "enabled": true,
      "url": http://ip-10-20-30-55.ec2.internal:8200,
      "path": "v1/secret",
      "namespace": "",
      "reject-unauthorized": true,
      "auth-method": "gcp-iam",
      "aws-iam": {
        "role-name": ""
      },
      "app-role": {
        "root_id": "",
        "secret_id": ""
      },
"gcp-iam": {
          "role-name": "my-iam-role"
      }
    }
  }
}

Richten Sie Berechtigungen ein, wenn Sie die GCP-IAM-Authentifizierung verwenden

Wenn Sie die Authentifizierungsmethode gcp-iam verwenden, muss der Datenbroker über die folgende GCP-Berechtigung verfügen:

- iam.serviceAccounts.signJwt

Erstellen einer neuen Synchronisierungsbeziehung mithilfe von Geheimnissen aus dem Tresor

Nachdem nun alles eingerichtet ist, können Sie einen API-Aufruf senden, um eine Synchronisierungsbeziehung zu erstellen, die Ihren Tresor zum Abrufen der Geheimnisse verwendet.

Veröffentlichen Sie die Beziehung mithilfe der Copy and Sync REST-API.

Headers:
Authorization: Bearer <user-token>
Content-Type: application/json
x-account-id: <accountid>
x-netapp-external-request-id-src: request ID as part of path for source credentials
x-netapp-external-request-id-trg: request ID as part of path for target credentials
Body: post relationship v2 body

Beispiel

Beispiel für die POST-Anfrage:

url: https://api.cloudsync.netapp.com/api/relationships-v2
headers:
"x-account-id": "CS-SasdW"
"x-netapp-external-request-id-src": "hb312vdasr2"
"Content-Type": "application/json"
"Authorization": "Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ik…"
Body:
{
"dataBrokerId": "5e6e111d578dtyuu1555sa60",
"source": {
        "protocol": "s3",
        "s3": {
                "provider": "sgws",
                "host": "1.1.1.1",
                "port": "443",
                "bucket": "my-source"
     },
"target": {
        "protocol": "s3",
        "s3": {
                "bucket": "my-target-bucket"
        }
    }
}