Datenintegritätssicherung

In diesem Thema wird beschrieben, wie Sie mithilfe von Prüfsummen die Integrität aufrechterhalten und prüfen können. Ihrer Secret-Daten, wenn hinzufügen und auf Secret-Versionen.

Wenn Sie eine Secret-Version hinzufügen, können Sie einen CRC32C-Fehler übergeben. Prüfsumme mit den Daten. Diese wird dann von Secret Manager um die Datenintegrität zu gewährleisten.

Die Prüfsumme sollte im Dezimalformat codiert werden, um ihrer Int64-Codierung in SecretPayload: Die zurückgegebene SecretVersion gibt an, ob die Prüfsumme vom Server empfangen wurde.

API

In diesen Beispielen wird curl verwendet, um die Verwendung mit der API zu demonstrieren. Sie können Zugriffstokens mit gcloud auth print-access-token generieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.

Berechnen Sie mit den in einer Datendatei gespeicherten geheimen Daten die Prüfsumme, mit gcloud storage hash. Die Prüfsumme muss in das Dezimalformat umgewandelt werden. Sie ist in SecretPayload-Proto als int64 codiert.

$ gcloud storage hash "/path/to/file.txt" --hex

Berechnen Sie die Prüfsumme mit den an die Befehlszeile übergebenen geheimen Daten so:

$ gcloud storage hash --hex cat <(echo ${SECRET_DATA})

Codieren Sie die Secret-Daten und speichern Sie sie als Shell-Variable.

$ SECRET_DATA=$(echo "seCr3t" | base64)

Rufen Sie die API mit "curl" auf.

$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id:addVersion" \
    --request "POST" \
    --header "authorization: Bearer $(gcloud auth print-access-token)" \
    --header "content-type: application/json" \
    --data "{\"payload\": {\"data\": \"${SECRET_DATA}\", \"data_crc32c\": $CHECKSUM}}"

Wenn auf die Secret-Version zugegriffen wird, enthält die zurückgegebene SecretPayload der Daten zusammen mit ihrer Prüfsumme. Beispielantwort:

{
  "name": "projects/123/secrets/my_secret/versions/2",
  "payload": {
    "data": "YQo=",
    "dataCrc32c": "163439259"
  }
}

Wenn Sie in der Console eine Secret-Version hinzufügen, geschieht Folgendes: Die Prüfsumme wird automatisch berechnet, wenn Sie einen Wert für das Secret eingeben.

Secret-Versionen, die mit vom Kunden verwalteten Verschlüsselungsschlüsseln (CMEK) verschlüsselt sind, und keine Prüfsummen gespeichert sind, also ist eine Prüfsumme, nicht zurückgegeben.

Nächste Schritte