本文說明如何覆寫 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 聯盟。
- 服務帳戶:從服務帳戶金鑰初始化憑證。