このドキュメントでは、Rust で使用されるデフォルトの認証をオーバーライドする方法について説明します。Rust は Google Cloud サービスに対するリクエストを自動的に認証しますが、デフォルトの認証情報をオーバーライドする必要がある場合があります。
前提条件
このガイドでは、Cloud Natural Language API を使用します。この API をインストールするには、サービスのクイックスタートに沿って操作します。このクイックスタートでは、サービスを有効にする方法について説明しています。
Rust ライブラリの完全な設定手順については、Rust を使ってみるをご覧ください。
依存関係
Cargo.toml ファイルで依存関係を宣言する必要があります。
cargo add google-cloud-language-v2 google-cloud-auth
デフォルトの認証情報
Google Cloud でアプリケーションを認証するには、アプリケーションのデフォルト認証情報を使用することをおすすめします。クライアント ライブラリは、構成なしでこの認証情報タイプをデフォルトで使用します。アプリケーションのコードを変更せずにこのデフォルトを構成する方法については、アプリケーションのデフォルト認証情報の仕組みをご覧ください。
残りの例を簡略化するために、use 宣言を追加します。
デフォルトを使用してクライアントを初期化します。
このクライアントは通常どおり使用します。
デフォルトの認証情報をオーバーライドする: API キー
API キーは、一部の Google Cloud サービスへのアクセスを許可するテキスト文字列です。API キーを使用すると、他の認証方法よりも構成が少なくて済むため、開発が簡素化される可能性があります。API キーにはいくつかのリスクが伴います。API キーを使用する場合は、API キーの管理に関するベスト プラクティスをお読みになることをおすすめします。
API キーの文字列を入力パラメータとして受け取る関数を作成します。
いくつかの use 宣言を追加して、残りの例を簡略化します。
API キー Builder を使用して認証情報を作成します。
credentialsオブジェクトを使用してクライアントを初期化します。このクライアントを通常どおりに使用します。
デフォルトの認証情報をオーバーライドする: サービス アカウントの権限借用
サービス アカウントの権限借用を使用すると、サービス アカウントの代わりに API 呼び出しを行うことができます。サービス アカウントの権限借用を使用するでは、この形式の認証について詳しく説明しています。
サービス アカウントの権限借用を使用するには、認証されたプリンシパル(ユーザー アカウントまたはサービス アカウント)から始めて、ユースケースに必要な権限を持つサービス アカウントの有効期間の短い認証情報をリクエストします。
認証情報をファイル システムやメモリに保持する必要がないため、ターゲット サービス アカウントのサービス アカウント キーをダウンロードするよりも安全です。
サービス アカウント識別子を入力パラメータとして受け取る関数で例を記述します。これは、サービス アカウントのメールアドレスか、Google が割り当てたサービス アカウントの一意の数値 ID になります。
いくつかの use 宣言を追加して、残りの例を簡略化します。
権限を借用したサービス アカウント Builder を使用して、認証情報を作成します。
credentialsオブジェクトを使用してクライアントを初期化します。このクライアントを通常どおりに使用します。
より詳しく
Rust クライアント ライブラリのその他の認証方法について学習する。
- 匿名認証情報: 認証を必要としないサービスやリソースにアクセスします。
- 外部アカウント: Rust クライアント ライブラリで Workload Identity 連携を使用します。
- サービス アカウント: サービス アカウント キーから認証情報を初期化します。