9.5.2.3. VNC コンソールの一時トークンの生成


Kubernetes API が仮想マシン (VM) の VNC にアクセスするための一時的な認証ベアラートークンを生成します。

注記

Kubernetes は、curl コマンドを変更することで、ベアラートークンの代わりにクライアント証明書を使用した認証もサポートします。

前提条件

  • OpenShift Virtualization 4.14 以降および ssp-operator 4.14 以降を搭載した実行中の仮想マシン。
  • OpenShift CLI (oc) がインストールされている。

手順

  1. HyperConverged (HCO) カスタムリソース (CR) の deployVmConsoleProxy フィールドの値を true に設定します。

    $ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv --type json -p '[{"op": "replace", "path": "/spec/deployVmConsoleProxy", "value": true}]'
  2. 次のコマンドを入力してトークンを生成します。

    $ curl --header "Authorization: Bearer ${TOKEN}" \
         "https://api.<cluster_fqdn>/apis/token.kubevirt.io/v1alpha1/namespaces/<namespace>/virtualmachines/<vm_name>/vnc?duration=<duration>"

    <duration> パラメーターは時間と分で設定でき、最小期間は 10 分です。たとえば、5h30m です。このパラメーターを設定しない場合、トークンの有効期限はデフォルトで 10 分となります。

    出力サンプル

    { "token": "eyJhb..." }
  3. オプション: 出力で提供されたトークンを使用して変数を作成します。

    $ export VNC_TOKEN="<token>"

    これで、トークンを使用して、仮想マシンの VNC コンソールにアクセスできるようになります。

検証

  1. 次のコマンドを入力してクラスターにログインします。

    $ oc login --token ${VNC_TOKEN}
  2. virtctl コマンドを使用して、仮想マシンの VNC コンソールへのアクセスをテストします。

    $ virtctl vnc <vm_name> -n <namespace>
警告

現在、特定のトークンを取り消すことはできません。

トークンを取り消すには、トークンの作成に使用したサービスアカウントを削除する必要があります。ただし、これにより、サービスアカウントを使用して作成した他のすべてのトークンも無効になります。次のコマンドは注意して使用してください。

$ virtctl delete serviceaccount --namespace "<namespace>" "<vm_name>-vnc-access"

クラスター管理者は、クラスターロールをインストールし、それをユーザーまたはサービスアカウントにバインドして、VNC コンソールのトークンを生成するエンドポイントへのアクセスを許可できます。

手順

  • クラスターロールをユーザーまたはサービスアカウントにバインドすることを選択します。

    • クラスターロールをユーザーにバインドするには、次のコマンドを実行します。

      $ kubectl create rolebinding "${ROLE_BINDING_NAME}" --clusterrole="token.kubevirt.io:generate" --user="${USER_NAME}"
    • 以下のコマンドを実行してクラスターロールをサービスアカウントにバインドします。

      $ kubectl create rolebinding "${ROLE_BINDING_NAME}" --clusterrole="token.kubevirt.io:generate" --serviceaccount="${SERVICE_ACCOUNT_NAME}"
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る