Slide 1

Slide 1 text

OCI-CLIの活用Tips ~資格勉強は役に立つ~ By kenjiro otsuka

Slide 2

Slide 2 text

大塚 健治朗(29歳 独身) 株式会社アトミテック 7年目 好きなサービス:コマンドライン・インターフェース(CLI) 最近の出来事:クーラー我慢チャレンジの翌日、 1日中頭痛に悩まされる 最近の悩み :クーラーの停止タイミングがわからない 1 @koko_kotsu @otsuka04 @koko_kotsu 自己紹介 1 Ope Pro よてい

Slide 3

Slide 3 text

ところでみなさん OCI-CLIつかってますか? 2 • 常時は使わないけどふとした時に使っている • スクリプト組むときに使っている • GUIなんて要らない

Slide 4

Slide 4 text

認証について • デフォルトの認証方式 • APIキーを持つすべてのマシンからCLI操作可能 API署名キー認証 • ブラウザのセッションを利用した認証方式 • APIキーなしでCLI操作が可能 • 原則Webブラウザが必要 セッショントークン認証 • OCI内に構築したリソースはすでに認証済 • 動的グループを利用したポリシー設定が必要 インスタンスプリンシパル認証 3

Slide 5

Slide 5 text

API署名キー認証 【特徴】 • チュートリアルで紹介されている認証方法 • APIキーを作成しコンソールを使用してIAMユーザと紐づける • 紐づけ時したIAMユーザグループのポリシーに依存 【セットアップ】 $ oci setup keys $ oci setup config など 【認証オプション】 • --auth api_key 4

Slide 6

Slide 6 text

セッショントークン認証 【特徴】 • ブラウザを利用した認証方法 ※ APIキーの作成や紐づけ作業不要 • セッションは最大24時間(延長しない場合1時間) • サインイン時のIAMユーザグループのポリシーに依存 • セッションのExp/Impが可能 【セットアップ】 $ oci session authenticate $ oci session refresh --profile $ oci session export --profile --output-file $ oci session import --session-archive /root/.oci/ 【認証オプション】 --auth security_token oci session authenticate 5

Slide 7

Slide 7 text

インスタンスプリンシパル認証 【特徴】 • OCI内に構築したサーバの認証方法 ※ 構築した時点で認証されている状態 • サーバを動的グループに所属させておく必要がある • 動的グループのポリシーに依存 【セットアップ】 $ oci setup instance-principal ※ API署名キー認証環境限定 ※ 実質無し 【認証オプション】 • --auth instance_principal 6 詳しくは:https://speakerdeck.com/ocise/ociji-shu-zi-liao-idoyobiakusesuguan-li-iam-xiang-xi?slide=15

Slide 8

Slide 8 text

メリット/デメリットを紹介 7 ・ チュートリアルがあるため設定が容易 ・ configファイルの使いまわしが可能 API署名キー セッショントークン インスタンス プリンシパル メリット ・ログインID/PWのみでCLI利用可能 ・キーを作成しないためセキュリティリスク の削減に繋がる ・OCI環境内であればセットアップ無し で利用可能 ・APIキーやconfig流出時にどこからでも環 境にアクセスされてしまう ・キーの自動失効無し (手動で削除) ・Webブラウザの無い環境では原則利用 不可(exp/imp除く) ・トークンTTLが1時間のためスクリプト用途 の場合は利用不可(最長24時間) ・OCI環境外では利用不可 デメリット

Slide 9

Slide 9 text

使い分けのポイント API署名キー • 外部(オンプレやクライア ントPC)通信によるシェル スクリプト運用 • APIキー及びconfigを複 数ユーザで使いまわす運 用 セッショントークン • 左右以外 インスタンスプリンシパル • OCI内部通信によるシェ ルスクリプト運用 • OCIにIDを所持していな い利用者がCLIを利用す る場合 8

Slide 10

Slide 10 text

おすすめっていったっていちいちオプションめんどいよ! 9 OCI_CLI_AUTH • --auth オプションに対応 • export OCI_CLI_AUTH=security_token • export OCI_CLI_AUTH=instance_principal OCI_CLI_PROFILE • --profile オプションに対応 • export OCI_CLI_PROFILE=demo (出典)https://docs.public.oneportal.content.oci.oraclecloud.com/ja-jp/iaas/Content/API/SDKDocs/clienvironmentvariables.htm

Slide 11

Slide 11 text

参考元 10 Oracle University - Oracle Cloud Infrastructure Operations Professional https://mylearn.oracle.com/ou/learning- path/japanese-become-an-oci-cloud- operations-professional-jp-2022/111018 Oracle Cloud Infrastructure Ansible Collection - Authentication Guide https://oci-ansible- collection.readthedocs.io/en/latest/guide s/authentication.html Oracle Cloud Infrastructure ドキュメント - コマンドライン・インタ フェース(CLI) https://docs.oracle.com/ja- jp/iaas/Content/API/Concepts/cliconcept s.htm