copyright: years: 2020, 2025 lastupdated: "2025-09-19"
keywords: Secrets Manager的事件通知,Secrets Manager的事件通知,Secrets Manager 的警示
subcollection: secrets-manager
啟用 Secrets Manager 的事件通知
身為 IBM Cloud® Secrets Manager的管理者,您可能想要使用電子郵件、SMS 或其他支援的遞送通道,將 Secrets Manager 中的事件通知傳送給其他使用者或人工目的地。 此外,您可能想要將這些事件通知傳送至其他應用程式,以使用事件驅動程式設計來建置邏輯,例如使用 Webhook。 這可以透過 Secrets Manager 與 IBM Cloud® Event Notifications之間的整合來達成。
若要將資訊傳送至 Event Notifications,您必須將 Secrets Manager 服務實例連接至 Event Notifications。 如需使用 Event Notifications的相關資訊,請參閱 開始使用 Event Notifications。
如果您決定刪除 Secrets Manager 服務實例,也請移除 Event Notifications 服務實例中作為來源的 Secrets Manager。
Secrets Manager 如何收集及傳送事件
當您的 Secrets Manager 實例中發生感興趣的事件時,Secrets Manager 會與連接的 Event Notifications 實例通訊,以將通知轉遞至 支援的目的地。
Secrets Manager 會依 事件類型、密鑰類型及期限詳細資料 (如果適用的話) 來聚集擱置通知的清單。 每隔 1-2 分鐘,服務會檢查並分派任何擱置通知給已連接的 Event Notifications 服務。 例如,您可能會收到類似下列訊息的通知:
- 您有 1 個任意密鑰在 1 天後到期。
- 您有 5 個公用憑證密碼,將在 10 天後到期。
- 您有 100 個匯入的憑證密碼將在 30 天後到期。
100 是您可以在單一事件通知中收到通知的密鑰數目上限。
Secrets Manager 的事件
下表列出產生事件的 Secrets Manager 動作。
視您在服務中使用的密鑰類型而定,Secrets Manager可能不會產生事件。 例如,如果憑證設為在 24 小時內到期,則您不會收到通知。 如需相關資訊,請參閱 依密鑰類型列出的事件。
| 事件名稱 | 事件類型 | 子類型 | 說明 | 嚴重性層次 |
|---|---|---|---|---|
| 已建立密鑰 | com.ibm.cloud.secrets-manager.secret_created |
將密鑰新增至實例時,會傳送事件。 | low |
|
| 密鑰建立失敗 | com.ibm.cloud.secrets-manager.secret_creation_failed |
當建立密鑰的要求失敗時,會傳送事件。 | low |
|
| 已輪換密鑰 | com.ibm.cloud.secrets-manager.secret_rotated |
當密鑰旋轉且新版本變成可用時,即會傳送事件。 | low |
|
| 密鑰輪替失敗 | com.ibm.cloud.secrets-manager.secret_rotation_failed |
當要求輪替密鑰失敗時,會傳送事件。 | high |
|
| 密鑰 90 天後到期 | com.ibm.cloud.secrets-manager.secret_about_to_expire |
in_90_days |
當密鑰到期後 90 天時,會傳送事件。 | high |
| 密鑰 60 天後到期 | com.ibm.cloud.secrets-manager.secret_about_to_expire |
in_60_days |
當密鑰到期後 60 天時,會傳送事件。 | high |
| 密鑰在 30 天後到期 | com.ibm.cloud.secrets-manager.secret_about_to_expire |
in_30_days |
當密鑰到期後 30 天時,會傳送事件。 | high |
| 密鑰在 10 天後到期 | com.ibm.cloud.secrets-manager.secret_about_to_expire |
in_10_days |
當密鑰從到期開始 10 天時,即會傳送事件。 | high |
| 密鑰在 1 天後到期 | com.ibm.cloud.secrets-manager.secret_about_to_expire |
in_1_day |
當密鑰從到期開始算起 1 天時,會傳送事件。 | high |
| 密鑰在 1 天內到期 | com.ibm.cloud.secrets-manager.secret_about_to_expire |
in_0_days |
當密鑰從到期開始不到 1 天時,即會傳送事件。 | high |
| 密鑰已過期 | com.ibm.cloud.secrets-manager.secret_expired |
當密鑰達到其到期日和時間時,會傳送事件。 | high |
|
| 已撤銷密鑰 | com.ibm.cloud.secrets-manager.secret_revoked |
當密鑰版本在排定到期之前撤銷時,會傳送事件。 | low |
|
| 已刪除密鑰 | com.ibm.cloud.secrets-manager.secret_deleted |
從 Secrets Manager 實例刪除密鑰時,會傳送事件。 | low |
|
| 密鑰刪除失敗 | com.ibm.cloud.secrets-manager.secret_deletion_failed |
當刪除密鑰的要求失敗時,會傳送事件。 | high |
|
| 已封鎖密鑰刪除 | com.ibm.cloud.secrets-manager.secret_deletion_blocked |
因為密鑰已鎖定而無法刪除時,會傳送事件。 | low |
|
| 已封鎖密鑰撤銷 | com.ibm.cloud.secrets-manager.secret_revocation_blocked |
因為密鑰已鎖定而無法撤銷時,會傳送事件。 | low |
|
| 已封鎖密鑰旋轉 | com.ibm.cloud.secrets-manager.secret_rotation_blocked |
當密鑰因為已鎖定而無法輪替時,會傳送事件。 | low |
|
| 已封鎖密鑰有效期限 | com.ibm.cloud.secrets-manager.secret_expiration_blocked |
當密鑰因為已鎖定而無法到期時,會傳送事件。 | high |
|
| 已移除密鑰資料 | com.ibm.cloud.secrets-manager.secret_data_removed |
移除密鑰的資料時,會傳送事件。 | low |
|
| 已刪除密鑰版本資料 | com.ibm.cloud.secrets-manager.secret_version_data_deleted |
刪除密鑰版本的資料時,會傳送事件。 | low |
|
| 建立秘密任務 | com.ibm.cloud.secrets-manager.secret_task_created |
為秘密建立任務時,會傳送事件。 | low |
|
| 秘密任務成功 | com.ibm.cloud.secrets-manager.secret_task_succeeded |
當任務成功完成時會傳送事件。 | low |
|
| 秘密任務失敗 | com.ibm.cloud.secrets-manager.secret_task_failed |
當任務失敗時會傳送事件。 | high |
|
| 秘密任務已刪除 | com.ibm.cloud.secrets-manager.secret_task_deleted |
刪除工作時會傳送事件。 | low |
|
| 測試事件 | com.ibm.cloud.secrets-manager.test_event |
將測試通知轉遞至 Event Notifications時,會傳送事件。 | low |
secret_about_to_expire 事件只會在指定的日期傳送一次。 這意味著,如果您指定機密在 10 天後過期,則當機密還剩 10 天時您會收到通知。 您在任何其他時間都不會收到通知,例如,當密鑰還剩 9 天時。
支援的密鑰類型
下表列出可以根據服務中支援的密碼類型產生的 Secrets Manager 事件。
| 事件名稱 | 事件類型 | 出現項目 | 任意 | IAM 認證 | 鍵值 | 使用者認證 | 匯入的憑證 | 專用憑證 | 公用憑證 | 服務認證 | 自訂認證 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 已建立密鑰 | com.ibm.cloud.secrets-manager.secret_created |
一次性 | |||||||||
| 密鑰建立失敗 | com.ibm.cloud.secrets-manager.secret_creation_failed |
一次性 | |||||||||
| 已輪換密鑰 | com.ibm.cloud.secrets-manager.secret_rotated |
一次性 | |||||||||
| 密鑰輪替失敗 | com.ibm.cloud.secrets-manager.secret_rotation_failed |
一次性 | |||||||||
| 密鑰即將到期 | com.ibm.cloud.secrets-manager.secret_about_to_expire |
在密鑰到期之前 90、60、30、10、1、0 天 | 不適用[1] | ||||||||
| 密鑰已過期 | com.ibm.cloud.secrets-manager.secret_expired |
每天一次 | 不適用[2] | ||||||||
| 已撤銷密鑰 | com.ibm.cloud.secrets-manager.secret_revoked |
一次性 | 不適用[3] | 不適用[4] | 不適用[5] | 不適用[6] | 不適用[7] | 不適用[8] | 不適用[9] | 不適用[10] | |
| 已刪除密鑰 | com.ibm.cloud.secrets-manager.secret_deleted |
一次性 | |||||||||
| 已封鎖密鑰刪除 | com.ibm.cloud.secrets-manager.secret_deletion_blocked |
一次性 | |||||||||
| 已封鎖密鑰旋轉 | com.ibm.cloud.secrets-manager.secret_rotation_blocked |
一次[11] 每日 [12] |
|||||||||
| 已封鎖密鑰撤銷 | com.ibm.cloud.secrets-manager.secret_revocation_blocked |
一次性 | 不適用[13] | 不適用[14] | 不適用[15] | 不適用[16] | 不適用[17] | 不適用[18] | 不適用[19] | 不適用[20] | |
| 已封鎖密鑰有效期限 | com.ibm.cloud.secrets-manager.secret_expiration_blocked |
一次 每日 |
不適用[21] | 不適用[22] | 不適用[23] | 不適用[24] | |||||
| 已刪除密鑰版本資料 | com.ibm.cloud.secrets-manager.secret_data_removed |
一次性 | |||||||||
| 建立秘密任務 | com.ibm.cloud.secrets-manager.secret_task_created |
一次性 | |||||||||
| 秘密任務成功 | com.ibm.cloud.secrets-manager.secret_task_created |
一次性 | |||||||||
| 秘密任務失敗 | com.ibm.cloud.secrets-manager.secret_task_created |
一次性 | |||||||||
| 秘密任務已刪除 | com.ibm.cloud.secrets-manager.secret_task_created |
一次性 |
啟用通知
Secrets Manager 服務範例所產生的事件,可以轉發到同一帳戶中可用的 Event Notifications 服務範例。 您只能將一個 Secrets Manager 實例配置為一個 Event Notifications 服務實例。 若要開始使用,您需要:
- Secrets Manager 服務上的 管理程式 服務存取權。
- Event Notifications 服務上的 管理員 服務存取權。 若要檢視帳戶中現有的 Event Notifications 服務實例,您還需要 檢視者 平台存取權或更高版本。
在使用者介面中連接至 Event Notifications
在啟用 Secrets Manager的通知之前,請確定您具有與 Secrets Manager 實例位於相同帳戶中的 Event Notifications 服務實例。 然後,您可以使用 Secrets Manager 使用者介面中的 設定> Event Notifications 區段來連接服務。
-
在主控台中,按一下 功能表 圖示
> 資源清單。
-
從服務清單中,選取 Secrets Manager的實例。
-
在 Secrets Manager 導覽中,按一下 設定。
-
在 Event Notifications 區段中,按一下 連接。
-
在側邊畫面中,檢閱連線的來源詳細資料。 (選用項目)提供說明。
-
選取您要連接的資源群組及 Event Notifications 服務實例。
如果 Secrets Manager 與 Event Notifications 之間的 IAM 授權不存在於您的帳戶中,則會顯示對話。 遵循提示來授與服務之間的存取權。
- 若要授與 Secrets Manager 與 Event Notifications之間的存取權,請按一下 授權。
- 在側邊畫面中,選取 Event Notifications 作為目標服務。
- 從實例清單中,選取您要授權的 Event Notifications 服務實例。
- 選取 事件來源管理員 角色。
- 按一下 檢閱。
- 按一下指派。
-
若要確認連線,請按一下 連接。
會顯示成功訊息,指出 Secrets Manager 現在已連接至 Event Notifications。 如果稍後需要中斷與 Event Notifications 的連線,您可以使用選項功能表
> 中斷連線,將 Secrets Manager 作為 Event Notifications 實例中的來源服務移除。
如果您選擇中斷 Event Notifications的連線,請勿刪除 Secrets Manager 與 Event Notifications之間的 IAM 授權。Secrets Manager 會使用現有授權從 Event Notifications取消登錄。 如果刪除 Event Notifications 實例,IAM 也會刪除服務與 Secrets Manager 之間存在的任何授權。
使用 API 連接至 Event Notifications
在啟用 Secrets Manager的通知之前,請確定您具有與 Secrets Manager 實例位於相同帳戶中的 Event Notifications 服務實例。 然後,您可以透過呼叫 Secrets Manager API,以程式化方式連接至 Event Notifications。
下列範例顯示可用來向 Event Notifications登錄 Secrets Manager 來源詳細資料的查詢。 當您呼叫 API 時,請將 ID 變數及 IAM 記號取代為 Secrets Manager 實例特定的值。
您可以在主控台找到 event_notifications_instance_crn 值,方法是移至「資源」清單,然後按一下 Event Notifications 實例列。
curl -X POST
--H "Authorization: Bearer {iam_token}" \
--H "Accept: application/json" \
--H "Content-Type: application/json" \
--d'{
"event_notifications_instance_crn": "crn:v1:bluemix:public:event-notifications:us-south:a/22018f3c34ff4ff193698d15ca316946:578ad1a4-2fd8-4e66-95d5-79a842ba91f8::",
"event_notifications_source_description": "Optional description of this source in an Event Notifications instance.",
"event_notifications_source_name": "My Secrets Manager"
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/notifications/registration"
成功要求會傳回已連接 Event Notifications 服務實例的 CRN 值。 如需必要及選用要求參數的相關資訊,請參閱 API 文件。
使用 Terraform 連接至 Event Notifications
下列範例顯示可用來向 Event Notifications登錄 Secrets Manager 來源詳細資料的配置。
resource "ibm_sm_en_registration" "en_registration" {
instance_id = local.instance_id
region = local.region
name = "test-root-ca"
event_notifications_instance_crn = var.en_instance_crn
event_notifications_source_description = "My event notification source"
event_notifications_source_name = "my_en_source"
}
在使用者介面中將測試事件傳送至 Event Notifications
啟用 Secrets Manager的通知之後,請測試您的連線,以確保將 Secrets Manager 所產生的事件轉遞至 Event Notifications。
您必須先在 Event Notifications 實例中建立 主題、目的地及訂閱,才能傳送測試 Secrets Manager 事件。 請確定 Event Notifications 主題中包含 測試事件 事件類型 (com.ibm.cloud.secrets-manager.test_event)
作為條件。
-
在 Secrets Manager 使用者介面中,按一下 設定。
-
在「Event Notifications」區段中,按一下 傳送測試事件。
即會顯示成功訊息,指出測試事件已順利轉遞至 Event Notifications。
使用 API 將測試事件傳送至 Event Notifications
啟用 Secrets Manager的通知之後,請測試您的連線,以確保將 Secrets Manager 所產生的事件轉遞至 Event Notifications。
您必須在 Event Notifications 實例中建立 主題、目的地及訂閱,才能傳送測試 Secrets Manager 事件。 請確定 Event Notifications 主題中包含 測試事件 事件類型 (com.ibm.cloud.secrets-manager.test_event)
作為條件。
下列範例顯示可用來將測試事件從 Secrets Manager 傳送至 Event Notifications的查詢。 當您呼叫 API 時,請將 ID 變數及 IAM 記號取代為 Secrets Manager 實例特定的值。
curl -X GET
--H "Authorization: Bearer {iam_token}" \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/notifications/registration/test"
成功的請求會傳回 HTTP 200 OK 回應,表示測試事件已成功轉送至您連接的 Event Notifications 服務實體。 如需詳細資訊,請參閱 API 文件。
遞送通知至選取的目的地
啟用 Secrets Manager的通知之後,請在 Event Notifications 中建立主題和訂閱,以便可以將警示轉遞並遞送至您選取的目的地。
如需受支援目的地的完整清單,請參閱 Event Notifications 文件。
電子郵件通知
您可以使用 IBM Cloud 電子郵件服務 作為 Secrets Manager 事件通知的遞送通道。 在現有主題與 IBM Cloud 電子郵件服務之間 建立 Event Notifications 訂閱,以透過電子郵件將警示轉遞給各種收件者。
來自 IBM Cloud 的電子郵件,其中包含 Secrets Manager 事件的相關資訊,類似於下列範例:
Subject: Your 2 public certificate secrets expire in 10 days
Body: You have 2 public certificate secrets that expire in 10 days: my-certificate-1, my-certificate-2. You can view and manage your existing secrets by accessing Secrets Manager in the console, or by using the CLI or APIs. For more information, check out the docs.
若要在電子郵件中接收事件通知的詳細資訊,請在建立 Event Notifications 訂閱時選取 新增通知有效負載 選項。 您的電子郵件會顯示與事件相關聯的 通知有效負載詳細資料。
Webhook。
您可以配置 Webhook 目的地,以便應用程式或服務可以程式化方式使用送入通知。 如需設定 Webhook 的相關資訊,請參閱 Event Notifications 文件。
通知有效負載詳細資料
Secrets Manager 所產生的成功事件包含各種欄位,可協助您識別事件的來源及詳細資料。
來自 Secrets Manager 的事件通知僅包含 meta 資料內容,例如資源的名稱或 ID。 機密資料 (例如 API 金鑰或密碼) 不會包含在產生的事件中。
傳送至 Event Notifications 的內容會根據事件類型及密鑰類型而有所不同。 例如,如果在一個以上 public_cert 密鑰的實例中發生 secret_about_to_expire:in_10_days 事件,則 Secrets Manager 會將通知有效負載傳送至類似於下列範例的 Event Notifications。
{
"event_sub_type": "in_10_days",
"event_type": "secret_about_to_expire",
"secret_type": "public_cert",
"secrets": [
{
"domains": "domain1.com",
"event_time": "2022-01-04T00:00:00Z",
"event_triggered_by": "SecretsManager",
"secret_expiration": "2022-01-14T00:00:00Z",
"secret_group_id": "default",
"secret_id": "crn:v1:bluemix:public:secrets-manager:<region>:a/<account_id>:<instance_id>:secret:<secret_id>",
"secret_name": "my-certificate-1",
"serial_number": "1:2:3:4"
},
{
"domains": "domain2.com, domain3.com",
"event_time": "2022-01-04T00:00:00Z",
"event_triggered_by": "SecretsManager",
"secret_expiration": "2022-01-14T00:00:00Z",
"secret_group_id": "default",
"secret_id": "crn:v1:bluemix:public:secrets-manager:<region>:a/<account_id>:<instance_id>:secret:<secret_id>",
"secret_name": "my-certificate-2",
"serial_number": "1:2:3:4"
},
],
"source_instance_api_private_url": "https://<instance_id>.private.<region>.secrets-manager.appdomain.cloud/api",
"source_instance_api_public_url": "https://<instance_id>.<region>.secrets-manager.appdomain.cloud/api",
"source_instance_crn": "crn:v1:bluemix:public:secrets-manager:<region>:a/<account_id>:<instance_id>::",
"source_instance_dashboard_url": "https://cloud.ibm.com/services/secrets-manager/crn%3Av1%3Abluemix%3Apublic%3Asecrets-manager%3A<region>%3Aa%2Fa6cc9f5f21f34323a4175c1117638b40%3A<instance_id>%3A%3A",
"source_service": "SecretsManager"
}
如需事件通知內容的相關資訊,請檢閱下表。
| 內容 | 說明 |
|---|---|
event_sub_type |
對應於觸發通知之 事件類型 的子類型。 |
event_type |
觸發通知的 事件類型。 |
secret_type |
與事件相關聯的密鑰類型。
可能的值包括 |
secrets[] |
包含與事件相關聯之密鑰的 meta 資料內容的物件清單。 列出的內容會根據密鑰類型而有所不同。 針對所有密鑰類型傳送的內容包括:
失敗事件也可以包含:
|
tasks[] |
包含與事件相關的秘密任務的元資料屬性的物件清單。 針對所有密鑰類型傳送的內容包括:
失敗事件也可以包含:
|
source_instance_api_private_url |
指定給 Secrets Manager 服務實體的 私有端點 URL。 |
source_instance_api_public_url |
指定給 Secrets Manager 服務實體的公共端點 URL。 |
source_instance_crn |
雲端資源名稱 (CRN),可唯一識別您的 Secrets Manager 服務實體。 |
source_instance_dashboard_url |
URL 到您主控台中的 Secrets Manager 服務儀表板。 |
source_service |
傳送事件通知之服務的顯示名稱。 |
-
事件不適用,因為此密鑰類型沒有存活時間 (TTL) 限制。 ↩︎
-
事件不適用,因為此密鑰類型沒有存活時間 (TTL) 限制。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
您會收到通知,通知您手動旋轉未順利完成。 ↩︎
-
當自動旋轉失敗時,您會每天收到通知,直到成功為止。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此通知類型僅適用於專用憑證。 ↩︎
-
事件不適用,因為此密鑰類型沒有存活時間 (TTL) 限制。 ↩︎
-
事件不適用,因為在此機密類型中無法封鎖到期日。 ↩︎
-
事件不適用,因為在此機密類型中無法封鎖到期日。 ↩︎
-
事件不適用,因為在此機密類型中無法封鎖到期日。 ↩︎