はじめに
こんにちは、技術部の内藤です。小ネタです。
OCI CLIでインスタンスプリンシパル認証を使用する際、毎回 --auth instance_principal
オプションを指定するのは面倒です。環境変数を設定することで、このオプションを省略できるようになります。
インスタンスプリンシパルとは
インスタンスプリンシパルは、OCIのコンピュートインスタンスがAPIキーを使わずにOCIサービスにアクセスできる認証方式です。インスタンス自体がプリンシパル(認証主体)として機能し、適切なポリシーが設定されていれば、インスタンス上のアプリケーションやOCI CLIからOCIリソースにアクセスできます。
詳細については、以下の公式情報をご確認ください。
- インスタンスからのサービスのコール
- OCI技術資料 : IDおよびアクセス管理 (IAM) 詳細 - Speaker Deckの8ページ目から
- オンデマンドクラスタ実現のためのインスタンス・プリンシパル認証設定方法 | Oracle Cloud Infrastructure チュートリアル
動的グループとポリシーの説明はしませんので、上記公式情報などを参考に、動的グループと必要なポリシーを設定してください。
オプションでのインスタンスプリンシパル認証の使用方法
OCI CLIでインスタンスプリンシパル認証を使用する場合、通常は以下のように --auth instance_principal
オプションを指定します。
oci compute instance list --auth instance_principal
毎回このオプションを指定するのは手間がかかります。
環境変数による設定
環境変数 OCI_CLI_AUTH
を設定することで、認証方式をデフォルトで指定できます。
bashなら .bashrc
などに記載しておきましょう。
export OCI_CLI_AUTH=instance_principal
この環境変数を設定すると、OCI CLIコマンドで --auth
オプションを省略できます。
oci compute instance list
おわりに
おわりです。