Versionen geheimer Schlüssel verwalten
Wenn Sie einen geheimen Schlüssel in IBM Cloud® Secrets Manager rotieren, erstellen Sie eine neue Version seines Werts. Mit IBM Cloud® Secrets Manager können Sie den Versionsverlauf einsehen und die Versions-Metadaten von Secrets aktualisieren. Wenn Sie einen geheimen Schlüssel versehentlich ersetzen oder überschreiben, können Sie ihn auch auf eine frühere Version zurücksetzen.
Vorbereitende Schritte
Bevor Sie beginnen, müssen Sie prüfen, ob Sie über die erforderliche Zugriffsebene verfügen. Zum Aktualisieren der Metadaten einer Version des geheimen Schlüssels oder zum Wiederherstellen der Vorgängerversion eines geheimen Schlüssels benötigen Sie die Servicerolle Schreibberechtigter oder höher. Zum Anzeigen des Versionsprotokolls eines geheimen Schlüssels benötigen Sie die Servicerolle Leser oder höher.
Versionsprotokoll für geheime Schlüssel anzeigen
Wenn Sie einen geheimen Schlüssel in IBM Cloud® Secrets Manager rotieren, erstellen Sie eine neue Version seines Werts. Sie können den Versionsverlauf Ihrer geheimen Schlüssel mithilfe der Benutzerschnittstelle oder API schnell untersuchen.
Secrets Manager bis zu 50 Versionen eines Geheimnisses zu Prüfzwecken aufbewahrt, einschließlich geheimer Metadaten. Allerdings enthalten nur die aktuelle und die unmittelbar vorhergehende Version die geheimen Daten, frühere Versionen nicht.
Versionsprotokoll in der Benutzerschnittstelle anzeigen
Wenn Sie den Versionsverlauf eines geheimen Schlüssels prüfen, können Sie die Secrets Manager-Benutzerschnittstelle verwenden, um die allgemeinen Merkmale jeder Rotation anzuzeigen.
- Klicken Sie in der Konsole auf das Symbol Menü
> Ressourcenliste.
- Wählen Sie in der Liste der Services Ihre Instanz von Secrets Manager aus.
- Wechseln Sie in der Benutzerschnittstelle von Secrets Manager zu Ihrer Geheime Schlüssel -Liste.
- Klicken Sie in der Zeile für den geheimen Schlüssel, den Sie überprüfen wollen, auf das Aktionen Menü
> Versionsverlauf.
- Optional: Aktualisieren Sie die Metadaten der bestimmten Version des geheimen Schlüssels, die Sie anzeigen.
- Um die Metadaten Ihrer geheimen Version zu aktualisieren, laden Sie eine Datei hoch oder geben Sie die Metadaten und die Versionsmetadaten im JSON-Format ein.
- Klicken Sie auf Aktualisieren.
Versionen geheimer Schlüssel über die Befehlszeilenschnittstelle auflisten
Wenn Sie den Versionsverlauf eines geheimen Schlüssels prüfen, können Sie das Secrets Manager-Befehlszeilenschnittstellen-Plug-in verwenden, um die allgemeinen Merkmale jeder Rotation anzuzeigen.
Zum Auflisten aller Versionen, die einem geheimen Schlüssel zugeordnet sind, führen Sie den Befehl ibmcloud secrets-manager secret-versions aus. Die Optionen für SECRET_TYPE sind: arbitrary, iam_credentials, imported_cert, kv, private_cert, public_cert, service_credentials,
custom_credentials, und username_password.
ibmcloud secrets-manager secret-versions --secret-id SECRET-ID
Der Befehl gibt Informationen zur aktuellen und früheren Version aus. Beispiel: Das Datum, an dem jede Version erstellt wurde. Weitere Informationen zu den Befehlsoptionen finden Sie in ibmcloud secrets-manager secret-versions.
Versionen geheimer Schlüssel mit der API auflisten
Wenn Sie den Versionsverlauf eines geheimen Schlüssels prüfen, können Sie die Secrets Manager-API verwenden, um die allgemeinen Merkmale jeder Rotation anzuzeigen.
Die folgende Beispielanforderung listet Metadateneigenschaften für jede Version auf. Wenn Sie die API aufrufen, müssen Sie die ID-Variablen und das IAM-Token durch die Werte ersetzen, die für Ihre Secrets Manager-Instanz spezifisch sind. Die
Optionen für {secret_type} sind: arbitrary, iam_credentials, imported_cert, kv, private_cert, public_cert, service_credentials, custom_credentials,
und username_password.
curl -X GET
--H "Authorization: Bearer {iam_token}" \
--H "Accept: application/json" \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
Eine erfolgreiche Antwort gibt Metadatendetails zu jeder Version des geheimen Schlüssels zurück.
{
"versions": [
{
"created_at": "2022-06-27T11:58:15Z",
"created_by": "iam-ServiceId-e4a2f0a4-3c76-4bef-b1f2-fbeae11c0f21",
"expiration_date": "2023-10-05T11:49:42Z",
"id": "bc656587-8fda-4d05-9ad8-b1de1ec7e712",
"payload_available": true,
"secret_group_id": "67d025e1-0248-418f-83ba-deb0ebfb9b4a",
"secret_id": "67d025e1-0248-418f-83ba-deb0ebfb9b4a",
"secret_name": "example-imported-certificate",
"secret_type": "imported_cert",
"serial_number": "38:eb:01:a3:22:e9:de:55:24:56:9b:14:cb:e2:f3:e3:e2:fb:f5:18",
"validity": {
"not_after": "2023-10-05T11:49:42Z",
"not_before": "2022-06-27T11:58:15Z"
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}
],
"total_count": 1
}
Die Eigenschaft downloaded gibt an, ob die Daten für jede Version des geheimen Schlüssels bereits gelesen wurden oder auf sie zugegriffen wurde. Wenn das Feld payload_available den Wert true hat, bedeutet
dies, dass Sie Geheime Daten dieser Version wiederherstellen oder darauf zugreifen können. Weitere Informationen zu den erforderlichen
und optionalen Anforderungsparametern finden Sie unter API-Referenz.
Sie können Metadaten, die für die Anforderungen Ihrer Organisation relevant sind, mit dem Anforderungsparameter version_custom_metadata speichern. Die benutzerdefinierten Metadaten Ihres Geheimnisses werden wie alle anderen Metadaten
gespeichert, und Sie dürfen keine vertraulichen Daten enthalten. Weitere Informationen über die erforderlichen und optionalen Anfrageparameter finden Sie in der API-Referenz.
Metadaten von Versionen geheimer Schlüssel in der Benutzerschnittstelle aktualisieren
Sie können die Metadaten einer bestimmten Version eines geheimen Schlüssels aktualisieren, indem Sie die Benutzerschnittstelle von Secrets Manager verwenden.
Um die Metadaten einer geheimen Version zu aktualisieren, führen Sie die folgenden Schritte aus.
-
Klicken Sie in der Konsole auf das Symbol Menü
> Ressourcenliste.
-
Wählen Sie in der Liste der Services Ihre Instanz von Secrets Manager aus.
-
Wechseln Sie in der Benutzerschnittstelle von Secrets Manager zu Ihrer Geheime Schlüssel -Liste.
-
Klicken Sie in der Zeile für den geheimen Schlüssel, den Sie überprüfen wollen, auf das Aktionen Menü
> Versionsverlauf.
Wenn der geheime Schlüssel zuvor rotiert wurde, werden auf der Seite Informationen zur aktuellen und früheren Version angezeigt, z. B. das Erstellungsdatum der einzelnen Versionen.
-
Laden Sie eine Datei hoch oder geben Sie die Metadaten und die Versionsmetadaten im JSON-Format ein.
-
Klicken Sie auf Aktualisieren.
Metadaten von Versionen geheimer Schlüssel über die Befehlszeilenschnittstelle aktualisieren
Sie können das Plug-in der Secrets Manager-CLI verwenden, um die Metadaten einer bestimmten Version eines geheimen Schlüssels zu aktualisieren.
Um die Metadaten eines geheimen Schlüssels zu aktualisieren, führen Sie den Befehl ibmcloud secrets-manager secret-metadata-update aus.
Das folgende Beispiel zeigt das Format des Befehls ibmcloud secrets-manager secret-metadata-update.
ibmcloud secrets-manager secret-version-metadata-update --secret-id SECRET-ID --id VERSION-ID --version-custom-metadata='{"anyKey": "anyValue"}'
Metadaten von Versionen geheimer Schlüssel mit der API aktualisieren
Wenn Sie die Metadaten einer Version des geheimen Schlüssels aktualisieren möchten, können Sie die API Secrets Manager verwenden.
Die folgende Beispielanfrage aktualisiert die Metadateneigenschaften für jede Version. Wenn Sie die API aufrufen, müssen Sie die ID-Variablen und das IAM-Token durch die Werte ersetzen, die für Ihre Secrets Manager-Instanz spezifisch sind. Die
Optionen für {secret_type} sind: arbitrary, iam_credentials, imported_cert, kv, private_cert, public_cert, service_credentials, custom_credentials,
und username_password.
curl -X PATCH
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
--H "Content-Type: application/merge-patch+json" \
-d '{ "version_custom_metadata": { "version_special_id" : "someString" } }' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions/{version_id}/metadata"
Eine erfolgreiche Antwort gibt Metadatendetails zu jeder Version des geheimen Schlüssels zurück.
{
"alias": "current",
"created_at": "2022-06-27T11:58:15Z",
"created_by": "iam-ServiceId-e4a2f0a4-3c76-4bef-b1f2-fbeae11c0f21",
"expiration_date": "2023-10-05T11:49:42Z",
"id": "bc656587-8fda-4d05-9ad8-b1de1ec7e712",
"payload_available": true,
"secret_group_id": "67d025e1-0248-418f-83ba-deb0ebfb9b4a",
"secret_id": "67d025e1-0248-418f-83ba-deb0ebfb9b4a",
"secret_name": "example-arbitrary-secret",
"secret_type": "arbitrary",
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}
Die Eigenschaft downloaded gibt an, ob die Daten für jede Version des geheimen Schlüssels bereits gelesen wurden oder auf sie zugegriffen wurde. Wenn das Feld payload_available den Wert true hat, bedeutet
dies, dass Sie Geheime Daten dieser Version wiederherstellen oder darauf zugreifen können.
Sie können Metadaten, die für die Anforderungen Ihrer Organisation relevant sind, mit dem Anforderungsparameter version_custom_metadata speichern. Die benutzerdefinierten Metadaten Ihres Geheimnisses werden wie alle anderen Metadaten
gespeichert, und Sie dürfen keine vertraulichen Daten enthalten. Weitere Informationen über die erforderlichen und optionalen Anfrageparameter finden Sie in der API-Referenz
Geheime Schlüssel auf eine Vorgängerversion zurücksetzen
Versehentlich einen vorhandenen geheimen Schlüssel ersetzen oder überschreiben? Mit IBM Cloud® Secrets Manager können Sie sofort ein Rollback auf die Vorgängerversion durchführen.
Wenn Sie die Vorgängerversion eines geheimen Schlüssels wiederherstellen, wird eine neue Version des geheimen Schlüssels erstellt. Wenn beispielsweise die aktuelle Version Ihres geheimen Schlüssels 3 ist und Sie ein Rollback auf Version 2 durchführen, werden die Daten, die aus Version 2 wiederhergestellt wurden, zu Version 4.
Sie können eine Version für unterstützte Typen geheimer Schlüssel wiederherstellen. Zu Prüfzwecken speichert der Service die Metadaten von bis zu 50 Versionen für jeden geheimen Schlüssel, die Sie als Teil des Versionsprotokollseines geheimen Schlüssels überprüfen können.
Unterstützte Typen geheimer Schlüssel
Die Wiederherstellung auf eine frühere Version wird für IAM-Berechtigungsnachweise unterstützt.
Vorgängerversion in der Benutzerschnittstelle wiederherstellen
Sie können die Secrets Manager-Benutzerschnittstelle verwenden, um einen geheimen Schlüssel auf die vorherige Version zurückzusetzen.
-
Klicken Sie in der Konsole auf das Symbol Menü
> Ressourcenliste.
-
Wählen Sie in der Liste der Services Ihre Instanz von Secrets Manager aus.
-
Wechseln Sie in der Benutzerschnittstelle von Secrets Manager zu Ihrer Geheime Schlüssel -Liste.
-
Klicken Sie in der Zeile für den geheimen Schlüssel, den Sie überprüfen wollen, auf das Aktionen Menü
> Versionsverlauf.
Wenn der geheime Schlüssel zuvor rotiert wurde, werden auf der Seite Informationen zur aktuellen und früheren Version angezeigt.
-
Klicken Sie auf das Aktionen Menü
> Wiederherstellen neben der Version des geheimen Schlüssels, den Sie wiederherstellen wollen.
Derzeit können Sie nur eine Version für den geheimen IAM-Berechtigungsnachweistyp wiederherstellen. Eine geheime Version kann nur wiederhergestellt werden, wenn die festgelegte Time-to-Live (TTL) oder Lease-Dauer nicht erreicht wurde. Wenn eine Option nicht verfügbar ist, wird die Wiederherstellung einer Version nicht unterstützt.
Vorgängerversion über die Befehlszeilenschnittstelle wiederherstellen
Sie können die Secrets Manager CLI verwenden, um ein Geheimnis auf seine vorherige Version zurückzusetzen.
Der folgende Beispielbefehl stellt die vorherige Version eines Geheimnisses wieder her. Wenn Sie den Befehl aufrufen, ersetzen Sie die Variable SECRET_ID durch den Wert, der für Ihre Secrets Manager-Instanz spezifisch ist.
ibmcloud sm secret-version-create --secret-d SECRET_ID --secret-version-restore-from-version "previous"
Derzeit können Sie für IAM-Anmeldedaten und importierte Zertifikatsgeheimnisse nur eine Version wiederherstellen. Eine geheime Version kann nur wiederhergestellt werden, wenn die festgelegte Time-to-Live (TTL) oder Lease-Dauer nicht erreicht wurde.
Eine erfolgreiche Antwort gibt den Wert des geheimen Schlüssels zusammen mit anderen Metadaten zurück. Weitere Informationen zu den erforderlichen und optionalen Anforderungsparametern finden Sie in der API-Referenz.
Vorgängerversion mit der API wiederherstellen
Sie können die Secrets Manager-API verwenden, um einen geheimen Schlüssel auf seine vorherige Version zurückzusetzen.
Die folgende Beispielanforderung stellt die vorherige Version eines geheimen Schlüssels wieder her. Wenn Sie die API aufrufen, müssen Sie die ID-Variablen und das IAM-Token durch die Werte ersetzen, die für Ihre Secrets Manager-Instanz spezifisch
sind. Zulässige Werte für {secret_type}: iam_credentials.
Verwenden Sie die API zum Auflisten von Versionen, um die Versionen eines geheimen Schlüssels aufzulisten und die ID jeder Version abzurufen.
curl -X POST
--H "Authorization: Bearer {iam_token}" \
--H "Accept: application/json" \
--H "Content-Type: application/json" \
--d '{
"restore_from_version": "previous",
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
Derzeit können Sie für IAM-Anmeldedaten und importierte Zertifikatsgeheimnisse nur eine Version wiederherstellen. Eine geheime Version kann nur wiederhergestellt werden, wenn die festgelegte Time-to-Live (TTL) oder Lease-Dauer nicht erreicht wurde.
Eine erfolgreiche Antwort gibt den Wert des geheimen Schlüssels zusammen mit anderen Metadaten zurück. Weitere Informationen zu den erforderlichen und optionalen Anforderungsparametern finden Sie in der API-Referenz.