OCI CLIのインスタンスプリンシパル認証は --auth オプションなしでも利用できる

はじめに

こんにちは、技術部の内藤です。小ネタです。

OCI CLIでインスタンスプリンシパル認証を使用する際、毎回 --auth instance_principal オプションを指定するのは面倒です。環境変数を設定することで、このオプションを省略できるようになります。

インスタンスプリンシパルとは

インスタンスプリンシパルは、OCIのコンピュートインスタンスがAPIキーを使わずにOCIサービスにアクセスできる認証方式です。インスタンス自体がプリンシパル(認証主体)として機能し、適切なポリシーが設定されていれば、インスタンス上のアプリケーションやOCI CLIからOCIリソースにアクセスできます。

詳細については、以下の公式情報をご確認ください。

動的グループとポリシーの説明はしませんので、上記公式情報などを参考に、動的グループと必要なポリシーを設定してください。

オプションでのインスタンスプリンシパル認証の使用方法

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

おわりに

おわりです。