[組織ポリシー]新しい Vertex AI Workbench のユーザー管理のノートブックとインスタンスで root アクセスを無効にするポリシーを試してみた

[組織ポリシー]新しい Vertex AI Workbench のユーザー管理のノートブックとインスタンスで root アクセスを無効にするポリシーを試してみた

新しい Vertex AI Workbench のユーザー管理のノートブックとインスタンスで root アクセスを無効にするポリシーに関して、本ポリシーを設定するとどうなるのか、rootアクセスとは何かを調べてまとめました。
Clock Icon2024.07.07

概要

Vertex AI Workbenchでインスタンスやノートブック作成時に、インスタンスに対するルートアクセスをチェックできないようにする組織ポリシーがあります。

組織ポリシー名 内容 制約
新しい Vertex AI Workbench ユーザー管理のノートブックとインスタンスで root アクセスを無効にする このブール型制約を適用すると、新しく作成された Vertex AI Workbench ユーザー管理のノートブックとインスタンスで、ルートアクセスを有効にできなくなります。デフォルトでは、Vertex AI Workbench ユーザー管理のノートブックとインスタンスで root アクセスを有効にできます。 constraints/ainotebooks.disableRootAccess

本記事では、該当ポリシーの設定方法について調査検証してみました。

前提条件

  • 組織ポリシーを操作できるロールを所持していること(組織の管理者など)
  • 組織が作成されていること
  • プロジェクトに対して組織ポリシーを設定する(親のポリシーをオーバーライドする)

※組織ポリシーの設定は環境によっては重大な影響を引き起こす可能性があるので十分検討・検証の上実施してください。

そもそもルート(root)アクセスとは何か

Vertex AI Workbenchのルートアクセスとは、Vertex AI WorkbenchのコンソールからJupyterLABにアクセスした際に、terminalをroot権限で使用できる機能です。
インスタンス(ノートブック)作成時に、インスタンスに対するルートアクセスにチェックが入った状態で作成を実行すると、ルートアクセスが有効になった状態でインスタンスが作成されます。
スクリーンショット 2024-07-07 2.28.27

ルートアクセスが有効になった状態でJupyber Labのterminalを開くと、root権限を保持した状態でアクセスできます。以下のようにroot昇格もパスワード認証なしで行うことが出来ます。
スクリーンショット 2024-07-07 2.34.14

ルートアクセスを無効にした状態でインスタンス作成(または更新)を行うと、Jupyter Labのterminalでroot権限が必要なコマンドを実行するとパスワードを求められるようになります。
スクリーンショット 2024-07-07 9.46.00
よって一般ユーザが意図せずroot権限でコマンド発行(パッケージの更新やインストールなど諸々)を行ってしまう危険性を排除することが出来ます。(ただしこの場合、事前に該当インスタンスへcompute sshコマンドなどでアクセスしてrootパスワードを発行しておかないとJupyter Labのterminalでroot昇格時のパスワード認証を突破することが出来ません)

本ポリシーをオンにするとインスタンス作成(更新)時のインスタンスに対するルートアクセスのチェックボックスをチェックできないようにすることが出来ます。それでは実際に適用してみて動作を確認してみます。

組織ポリシーを適用してみる

準備

IAMと管理のメニューより組織ポリシーを選択し、画面真ん中あたりの検索ボックスにainotebooks.disableRootAccessと入力して、constraints/ainotebooks.disableRootAccessをクリックします。
スクリーンショット 2024-07-07 2.45.15

Disable root access on new Vertex AI Workbench user-managed notebooks and instancesのポリシーが表示されるのでクリックします。
スクリーンショット 2024-07-07 2.47.49

上記のポリシーの詳細が表示されますので、右上のポリシーを管理を押下します。
以下の設定をします。(ルールはルールの追加を押下すると設定できます)

設定項目 設定値
ポリシーのソース 親のポリシーをオーバーライドする
ルール(適用) オン

設定値入力後はポリシーを設定を押下します。
スクリーンショット 2024-07-07 2.49.54

これで準備完了です。

確認

Vertex AIのインスタンス作成画面を開いてIAM とセキュリティの箇所でインスタンスに対するルートアクセスの項目を確認してみてください。
スクリーンショット 2024-07-07 2.56.16

グレーアウトして、チェックすることが出来ないですね。作成済みインスタンスでも同様にチェック不可になっているか確認してみます。
スクリーンショット 2024-07-07 3.07.00

チェック不可になっていました。ちゃんと効果を発揮していますね。

まとめ

新しい Vertex AI Workbench のユーザー管理のノートブックとインスタンスで root アクセスを無効にするポリシーを用いるとroot権限でのアクセスを制御できることが確認できました。
インスタンス作成時にインスタンスに対するルートアクセスをチェックして作成してしまうと意図せずroot権限で作業してしまい本番障害などにつながる可能性もあると思います。
ワークロードを考慮の上、必要であれば本ポリシーをオンにすると不慮の事故が発生する可能性も多少は低減するのかなと思いました。
本ポリシーを設定する上でこの記事が少しでもお役に立ったら嬉しいです。それではまた。

参考

Vertex AIへのアクセスについて
Jupyter Notebooks on Vertex AI Workbench prompts for password when using sudo #1992

この記事をシェアする

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.