如何在 Azure 受控 Grafana 中使用服務帳戶
在本指導方針中,了解如何使用服務帳戶。 服務帳戶可用來執行自動化作業,並使用 Grafana API 來驗證 Grafana 中的應用程式。
常見使用案例包括:
- 佈建或設定儀表板
- 排程報告
- 定義警示
- 設定外部 SAML 驗證提供者
- 在不以使用者身分登入的情況下與 Grafana 互動
必要條件
啟用服務帳戶
如果您的現有 Grafana 工作區未啟用服務帳戶,請使用 Azure 入口網站 或 Azure CLI 更新 Grafana 實例的喜好設定,以加以啟用。
在 Azure 入口網站的 [設定] 下,選取 [設定],然後在 [API 金鑰與服務帳戶] 下選取 [啟用]。
選取 [儲存],確認您想要在 Azure 受控 Grafana 中啟用 API 金鑰和服務帳戶。
需要 Azure 受控 Grafana CLI 延伸模組 0.3.0 或更新版本。 若要更新延伸模組,請執行 az extension update --name amg
。
執行 az grafana update 命令,以在現有的 Azure 受控 Grafana 執行個體中建立 API 金鑰與服務帳戶。 在下列命令中,以要更新的 Azure 受控 Grafana 執行個體名稱取代 <azure-managed-grafana-name>
。
az grafana update --name <azure-managed-grafana-name> ---service-account Enabled
建立服務帳戶
請遵循下列步驟來建立新的 Grafana 服務帳戶,並列出現有的服務帳戶:
移至您的 Grafana 實例端點,然後從左側功能表中選取 [使用者並存取>服務帳戶],然後新增服務帳戶。
從 [沒有基本角色]、[查看器]、[編輯器] 或 [管理員] 選項中,輸入新 Grafana 服務帳戶的 [顯示名稱] 和 [角色],然後選取 [建立]。 預設不會指派任何角色。
建立服務帳戶之後,Grafana 會顯示新服務帳戶的相關信息,包括其建立日期、現有的令牌和與其相關聯的許可權。 您會在下一個步驟中建立第一個令牌。
選擇性地從左側功能表中選取 [服務帳戶 ],以檢視 Grafana 實例中所有服務帳戶的清單。
執行 az grafana service-account create
命令以建立服務帳戶。 將預留位置 <azure-managed-grafana-name>
、<service-account-name>
和 <role>
取代為您自己的資訊。
可用的角色:Admin
、Editor
、Viewer
。
az grafana service-account create --name <azure-managed-grafana-name> --service-account <service-account-name> --role <role>
執行 az grafana service-account list
命令,以取得屬於指定 Azure 受控 Grafana 執行個體的所有服務帳戶清單。 將 <azure-managed-grafana-name>
取代為您 Azure 受控 Grafana 工作區的名稱。
az grafana service-account list --name <azure-managed-grafana-name> --output table
輸出範例:
AvatarUrl IsDisabled Login Name OrgId Role Tokens
-------------------- ------------ ----------- ---------- ------- ------ --------
/avatar/abc12345678 False sa-account1 account1 1 Viewer 0
- 執行
az grafana service-account show
命令,以取得服務帳戶的詳細資訊。 將 <azure-managed-grafana-name>
和 <service-account-name>
取代為您的個人資訊。
az grafana service-account show --name <azure-managed-grafana-name> --service-account <service-account-name>
新增服務帳戶令牌
建立服務帳戶之後,請新增一或多個存取權杖。 存取令牌是產生字串,用來向 Grafana API 進行驗證,而不需使用使用者名稱和密碼。 每個令牌都與特定許可權相關聯,可讓您控制授與給不同使用者或應用程式的存取層級。 您可以視需要建立、管理及撤銷令牌。
在 Grafana UI 中:
若要建立服務帳戶令牌,請選取 [ 新增服務帳戶令牌]。
使用自動產生的 [顯示名稱 ] 或輸入您選擇的名稱。 根據預設,到期日會設定為建立日期后的一天。 選擇性地更新建議的到期日,或選取 [無到期日]。
選取 [產生權杖]。 令牌只會顯示一次,因此請務必安全地複製並儲存。 如果您遺失此令牌,則必須產生新的令牌。
令牌現在會列在服務帳戶詳細數據中。
在 Azure CLI:
使用 az grafana service-account token create
建立 Grafana 服務帳戶權杖。 將預留位置 <azure-managed-grafana-name>
、<service-account-name>
和 <token-name>
取代為您自己的資訊。
選擇性地設定到期時間:
參數 |
描述 |
範例 |
--time-to-live |
令牌預設有一天的到期時間。 選擇性地停用或編輯到期時間,以在指定時間之後停用令牌。 使用 s 代表秒、m 代表分鐘、h 代表小時、d 代表天、w 代表周、M 代表月或 y 代表年。 |
15d |
az grafana service-account token create --name <azure-managed-grafana-name> --service-account <service-account-name> --token <token-name> --time-to-live 15d
記下產生的令牌,並安全地儲存。 如果您遺失此令牌,則必須產生新的令牌。
執行 az grafana service-account token list
命令,以取得屬於指定服務帳戶的所有權杖清單。 將預留位置 <azure-managed-grafana-name>
和 <service-account-name>
取代為您自己的資訊。
az grafana service-account token list --name <azure-managed-grafana-name> --service-account <service-account-name> --output table
輸出範例:
Created Expiration HasExpired Name SecondsUntilExpiration
-------------------- -------------------- ------------ ------ ------------------------
2024-11-05T15:09:24Z 2024-11-06T14:48:51Z False token1 84388.80530215
編輯服務帳戶
在本節中,您將瞭解如何更新 Grafana 服務帳戶。
動作:
- 若要編輯名稱,請選取服務帳戶,然後在 [資訊] 下,選取 [編輯]。
- 若要編輯角色,請選取服務帳戶,然後在 [資訊] 下,選取角色,然後選擇另一個角色名稱。
- 若要停用服務帳戶,請選取服務帳戶,然後在頁面頂端選取 [停用服務帳戶],再選取 [停用服務帳戶] 以確認。 選取 [啟用服務帳戶] 便可重新啟用已停用的服務帳戶。
隨後立即顯示服務帳戶已更新通知。
使用 az grafana service-account update
編輯服務帳戶。 將預留位置 <azure-managed-grafana-name>
和 <service-account-name>
取代為您自己的資訊,並使用下列其中一或多個參數:
參數 |
描述 |
--is-disabled |
輸入 --is-disabled true 停用服務帳戶,或 --is-disabled false 啟用服務帳戶。 |
--name |
輸入服務帳戶的另一個名稱。 |
--role |
輸入服務帳戶的另一個角色。 可用的角色:Admin 、Editor 、Viewer 。 |
az grafana service-account update --name <azure-managed-grafana-name> --service-account <service-account-name> --role <role> --enabled false
若要停用服務帳戶,請執行 az grafana update
命令,並使用 --is-disabled true
選項。 若要啟用服務帳戶,請使用 --is-disabled false
。
az grafana update --service-account Disabled --name <service-account-name>
刪除服務帳戶
若要刪除 Grafana 服務帳戶,請選取服務帳戶,然後在頁面頂端選取 [刪除服務帳戶],再選取 [刪除服務帳戶] 以確認。 刪除服務帳戶是最終行為,一旦刪除服務帳戶,便無法復原。
若要刪除服務帳戶,請執行 az grafana service-account delete
命令。 將預留位置 <azure-managed-grafana-name>
和 <service-account-name>
取代為您自己的資訊。
az grafana service-account delete --name <azure-managed-grafana-name> --service-account <service-account-name>
刪除服務帳戶權杖
若要刪除服務帳戶權杖,請選取服務帳戶,然後在 [權杖] 下,選取 [刪除 (x)]。 請選取刪除,確認刪除。
若要刪除服務帳戶,請執行 az grafana service-account token delete
命令。 將預留位置 <azure-managed-grafana-name>
、<service-account-name>
和 <token-name>
取代為您自己的資訊。
az grafana service-account token delete --name <azure-managed-grafana-name> --service-account <service-account-name> --token <token-name>
下一步
在本操作指南中,您已了解如何建立和管理服務帳戶和權杖,以在 Azure 受控 Grafana 中執行自動化作業。 準備就緒後,請探索更多文章: