本文說明如何覆寫 Rust 使用的預設驗證。Rust 會自動驗證對 Google Cloud 服務的要求,但您有時可能需要覆寫預設憑證。
必要條件
本指南使用 Cloud Natural Language API。如要安裝這項 API,請按照服務快速入門導覽課程的說明啟用服務。
如需 Rust 程式庫的完整設定操作說明,請參閱「開始使用 Rust」。
依附元件
您必須在 Cargo.toml 檔案中宣告依附元件:
cargo add google-cloud-language-v2 google-cloud-auth
預設憑證
建議您使用應用程式預設憑證,在 Google Cloud 中驗證應用程式。用戶端程式庫預設會使用這類憑證,因此不需要進行任何設定。如要瞭解如何設定這項預設值,而不必變更應用程式中的任何程式碼,請參閱「應用程式預設憑證的運作方式」。
新增一些用途宣告,簡化其餘範例:
使用預設值初始化用戶端:
照常使用這個用戶端: <0x0A
覆寫預設憑證:API 金鑰
API 金鑰是文字字串,可授予部分 Google Cloud 服務的存取權。 使用 API 金鑰可簡化開發作業,因為相較於其他驗證方法,API 金鑰需要的設定較少。API 金鑰存在一些風險,因此我們建議您先閱讀「API 金鑰的最佳管理做法」,再決定是否使用。
編寫函式,以接收 API 金鑰字串做為輸入參數:
新增一些 use 宣告,簡化其餘範例:
使用 API 金鑰建構工具建立憑證:
使用
credentials物件初始化用戶端:然後照常使用這個用戶端:
覆寫預設憑證:服務帳戶模擬
服務帳戶模擬功能可讓您代表服務帳戶發出 API 呼叫。「使用服務帳戶模擬功能」一文詳細說明瞭這種驗證方式。
使用服務帳戶模擬功能時,您會先從經過驗證的主體 (您的使用者帳戶或服務帳戶) 開始,然後為具備授權的服務帳戶要求短期憑證,以滿足您的用途需求。
與下載目標服務帳戶的服務帳戶金鑰相比,這種做法更安全,因為您不需要將憑證保留在檔案系統,甚至記憶體中。
請在函式中編寫範例,並將服務帳戶 ID 做為輸入參數。可以是服務帳戶電子郵件地址,也可以是 Google 指派給服務帳戶的不重複數字 ID。
新增一些 use 宣告,簡化其餘範例:
使用模擬的服務帳戶 建構工具 建立憑證:
使用
credentials物件初始化用戶端:然後照常使用這個用戶端:
更多資訊
如要瞭解 Rust 用戶端程式庫的其他驗證方法,請參閱:
- 匿名憑證:存取不需要驗證的服務或資源。
- 外部帳戶:搭配 Rust 用戶端程式庫使用 Workload Identity 聯盟。
- 服務帳戶:從服務帳戶金鑰初始化憑證。