Okta Privileged Accessクライアントを使用する

Okta Privileged Access クライアントのコマンドはどれも次の構文を使用します。

sft [global options] command [command options] [arguments...]

グローバルオプション

どのクライアントコマンドでも、次のオプションを使用できます。

  • -h--help:ヘルプを表示します。
  • -v--version:バージョンを表示します。

トピック

クライアントコマンド

コマンド 説明 オプション
sft config クライアント構成オプションを取得して設定します。「クライアントを構成する」をご覧ください。
  • --config-file:指定された構成ファイルを使用します。
  • --append:指定された値を配列に追加します。
sft dash ブラウザでチームのダッシュボードを開きます。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
sft device-info クライアントのデバイス情報をJSONとして表示します。 -
sft enroll Okta Privileged Accessプラットフォームのクライアントインベントリに新しいクライアントを追加します。
  • --default:新しいデフォルトチームを設定します。(デフォルト:true)
  • --urlOkta Privileged AccessインスタンスにアクセスするためのURLを設定します。
  • --team:指定されたチームを使用します。
  • --config-file:指定の構成ファイルを使用します。
  • --force:重複が存在する場合でもクライアントを登録します(デフォルト:false)
sft fleet enrolls フリート内で複数のクライアントをサイレント登録します。「Okta Privileged Accessクライアントをサイレント登録する」を参照してください。
  • --default:新しいチームをデフォルトとして設定します。(デフォルト:true)
  • --token:指定されたトークンを使ってクライアントを登録します。
  • --token-file:指定されたファイルに保存されたシークレットトークンを使ってクライアントを登録します。
sft help コマンドのリストまたは1つのコマンドのヘルプを表示します。 -
sft list-accounts このクライアントが使用するように構成されているアカウントのリストを表示します。
  • --config-file:指定の構成ファイルを使用します。
  • -l, --selector:指定のセレクターによって結果をフィルタリングします(ラベルクエリ)。「セレクター」をご覧ください。
  • --output, -o:結果を指定の書式に設定します。使用可能なオプションは、defaultjsondescribeです。
  • --columns:出力に指定の列名を表示します。列名は小文字で指定する必要があり、複数を指定する場合はカンマ区切りのリストにします。
sft list-projects チームで利用可能なプロジェクトのリストを表示します。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • -l, --selector:指定のセレクターによって結果をフィルタリングします(ラベルクエリ)。「セレクター」をご覧ください。
  • --output, -o:結果を指定の書式に設定します。使用可能なオプションは、defaultjsondescribeです。
  • --columns:出力に指定の列名を表示します。列名は小文字で指定する必要があり、カンマ区切りのリストで収集されます。
sft list-servers 現在のチームで利用可能なサーバーのリストを表示します。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • -l, --selector:指定のセレクターによって結果をフィルタリングします(ラベルクエリ)。「セレクター」をご覧ください。
  • -p, --project:指定のプロジェクト名によって結果をフィルタリングします。
  • --output, -o:結果を指定の書式に設定します。使用可能なオプションは、defaultjsondescribeです。
  • --columns:指定の列名を出力に表示します。ラベルは、列名が列オプションに渡された場合にのみ表示されます。たとえば、sft list-servers --column <ID>, <hostname>, <labels>です。列名は小文字で指定する必要があり、複数を指定する場合はカンマ区切りのリストにします。
sft list-servers-rjson 現在のチームで利用可能なサーバーのリストをRJSON形式で表示します。この出力をファイルに保存して、Royal TSXで動的フォルダーの作成に利用できます。「Okta Privileged Access向けにRoyal TSXを構成する」を参照してください。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • -l, --selector:指定のセレクターによって結果をフィルタリングします(ラベルクエリ)。「セレクター」をご覧ください。
  • -p, --project:指定のプロジェクト名によって結果をフィルタリングします。
  • -f, --filename:ファイル出力の格納パスを指定します。
sft login クライアントの現在のチームからログアウトした場合、セッションを作成し、チームのIDプロバイダーを認証します。

アクティブで承認されたクライアントセッションにより、Okta Privileged Access クライアントは、必要に応じてバックグラウンドで資格情報を要求できるようになります。

  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
sft logout 現在のセッションからログアウトします。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
sft proxycommand OpenSSH ProxyCommandと共に使用して、sshscprsyncftpなどでsftをトランスペアレントに使用できるようにします。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • --via, --bastion:指定のセキュアシェルBastion(踏み台)を介してターゲットに接続します。
  • --config:廃止。代わりにsft ssh-configを使用してください。
sft rdp 引数として渡されたターゲットにRDPを介して接続します。
  • --via, --bastion:指定のSSH Bastion(踏み台)を介してターゲットに接続します。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • --share:ターゲットと共有するディレクトリへの絶対パスを指定します。

    --share引数は、macOSのMacFreeRDPクライアントのみで機能します。

sft register-url-handler

(Windowsのみ)ユーザーが[My Servers(サーバー)]ページの[Connect(接続)]ボタンをクリックすると、ScaleFTアプリケーションが開きます。

これが正しく機能するには、次のエントリを使ってWindowsレジストリを更新する必要があります:Computer\HKEY_CLASSES_ROOT\ScaleFTProtocolHandler\shell\open\command.

対応するエントリがWindowsレジストリに存在しない場合、[Connect(接続)]ボタンを使ってScaleFTアプリケーションを起動することはできません。

-

sft resolve 指定されたホスト名またはインスタンス詳細に一致する単一サーバーを解決します。
  • --q, --quiet:致命的な警告のみがstderrに出力されるようにします。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
sft secrets 使用可能なsecretsコマンドをすべて列挙します。 -
sft secrets list 最上位レベルのシークレットフォルダとシークレットをすべて列挙します。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。

--project--resource-groupの両方のパラメーターを指定するか、それらのパラメーターを完全に除外する必要があります。

  • --path:指定されたパスを使用します。
sft secrets create シークレットを作成します。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
  • --key {key}:指定されたキーを追加します。
  • --value {value}:指定された値を追加します。
  • --name {name}:新しいシークレットの名前。
  • --description {description}:(オプション)このシークレットの説明。
sft secrets create-folder シークレットフォルダを作成します。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
  • --name {name}:新しいシークレットフォルダの名前。
  • --description {description}:(オプション)このシークレットフォルダの説明。
sft secrets describe パスにあるシークレットに関するメタデータを表示します。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
  • --name {name}:シークレットの名前。
sft secrets describe-folder パスにあるシークレットフォルダに関するメタデータを表示します。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
  • --name {name}:フォルダの名前。
sft update-secret

シークレットの値をアップデートします。

シークレットの名前または説明をアップデートするには、update-secret-metadataを使用します。

  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
  • --name {name}:新しいシークレットの名前。
  • --key {key}:新しい値のキー。
  • --value {value}:以前にメンションされたキーの新しい値。
sft secrets delete 指定されたシークレットを削除します。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
  • --name {name}:新しいシークレットの名前。
sft secrets delete-folder 指定されたシークレットフォルダを削除します。そのフォルダのコンテンツもすべて削除されます。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
sft secrets reveal キー名フィールドとシークレット値フィールドを表示します。
  • --resource-group {resource group}:指定されたリソースグループを使用します。

  • --project {project}:指定されたリソースグループを使用します。

  • --path:指定されたパスを使用します。

  • --name {name}:新しいシークレットの名前。

  • --key {key}:(オプション)レスポンスを指定された値に制限します。

secrets update-secret-metadata シークレットの名前または説明をアップデートします。
  • --resource-group {resource group}:指定されたリソースグループを使用します。

  • --project {project}:指定されたリソースグループを使用します。

  • --path:指定されたパスを使用します。

  • --name {name}:シークレットの名前。

  • --new-name {name}:(オプション)シークレットの新しい名前。

  • --description {description}:(オプション)シークレットの説明。これを除外した場合、説明はアップデートされません。

secrets update-folder-metadata シークレットフォルダの名前または説明をアップデートします。
  • --resource-group {resource group}:指定されたリソースグループを使用します。
  • --project {project}:指定されたリソースグループを使用します。
  • --path:指定されたパスを使用します。
  • --new-name {name}:シークレットフォルダの新しい名前。
  • --description {description}:(オプション)このフォルダの説明。これを除外した場合、説明はアップデートされません。
sft session-logs verify Okta Privileged Accessを使って登録されたOkta Privileged Accessゲートウェイ署名キーに対する、指定のセッションログの整合性を検証します。有効な署名がないログファイルは、不正確であるか、攻撃者によって破損されている可能性があります。
  • --stdin:セッションログファイルからではなく、stdinからのセッションデータを返します。
sft session-logs export セッションログを特定の書式でエクスポートします。デフォルトでは、ログはJSON形式でエクスポートされます。エクスポートプロセスでは、セッションログの検証も行われます。有効な署名がないログファイルは、不正確であるか、攻撃者によって破損されている可能性があります。
  • --stdin:セッションログファイルからではなく、stdinからのセッションデータを返します。
  • --insecure:クライアントによるセッションログファイルの整合性の検証を停止します。
  • --format:特定の書式でログをエクスポートします。使用可能なオプションは、jsonまたはasciinemaです。
  • --output:エクスポートされたログを、stdoutではなく指定のファイルに保存します。
sft ssh 引数として渡されたターゲットにセキュアシェルを介して接続します。

一般に、Okta Privileged Accessは、sshの操作にOpenSSHのProxyCommand統合を使用します。OpenSSHが利用できない環境またはコンテキストでは、sshのサポートにsft sshコマンドを使用します。このコマンドは、Okta Privileged Accessに固有のオプション(--viaなど)を明示的に渡すときにも利用できます。

  • --via, --bastion:指定されたSSH Bastion(踏み台)ホストを使ってターゲットに接続します。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • -L, --local-port-forward:指定されたローカルポートをリモートアドレスに転送します。
  • -R, --remote-port-forward:指定されたリモートリスナーをローカルアドレスに転送します。
  • --command:指定されたコマンドをSSHを介して実行します。
sft ssh-config ~/.ssh/configファイルでの使用に適したOpenSSH構成ブロックを出力します。これにより、ローカルsshバイナリがOkta Privileged Access認証を使用できるようになります。このSSH構成は、アクティブで承認されたセッションがクライアントに現在ある場合に使用されます。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --account:指定されたアカウントを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • --via, --bastion:指定のSSH Bastion(踏み台)を介してターゲットに接続します。
sft support collect Oktaサポート用にローカルの診断情報を収集します。 -
sft support submit Oktaサポート用に診断情報を送信します。 -
sft unenroll Okta Privileged Accessプラットフォームのクライアントインベントリーから現在のアクティブクライアントを削除します。
  • -y, --yes:指定されたチームを使用します。
  • --team:指定されたチームを使用します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --config-file:指定された構成ファイルを使用します。
  • --all:すべてのローカルクライアントの登録を解除します。
sft use 登録済みのチームを、現在のセッションで使用する現在のデフォルトとして設定します。
  • --instanceOkta Privileged Accessプラットフォームの指定のインスタンスを使用します。
  • --config-file:指定された構成ファイルを使用します。

セレクター

-l, --selector:フィルタリングするセレクター(ラベルクエリ)。

セレクターをオプションの引数として受け取るコマンドは、任意のセレクタークエリに基づいて結果をフィルタリングできます。

セレクター構文はKubernetesラベルクエリに基づいています。「ラベルおよびセレクター」をご覧ください。

例:

sft list-servers -l os_type=windows,project_name=Demo

この例では、セレクターを使用して、アクセスできるサーバーのリストをフィルタリングします。このコマンドは、デモプロジェクトに登録されているWindowsサーバーを返します。

クライアント構成

sft configコマンドを使用すると、構成オプションを表示または設定できます。

Okta Privileged Accessクライアントのインストール時には構成ファイルは存在しません。最初の構成オプションを設定したときに構成ファイルが作成されます。

構成値を明示的に設定するまでは、デフォルトの設定値が使用されます。Okta Privileged Accessクライアント用に用意されているデフォルト値は、一般的な状況で最大限のセキュリティと最大限の使いやすさを実現することを意図しています。rdp.screensizeの設定などの個人的な好みを除いては、いずれのクライアントの構成も全く設定し直す必要はありません。

Okta Privileged Accessクライアントの構成はセクションにグループ化されています。現在、これらのセクションには、rdpsshssh_agentservice_authupdateが含まれます。

構成を表示する

  • sft config:現在の構成を表示します。
  • sft config [section.key]section.keyで示される特定の構成の現在の値を表示します。

構成値を設定する

構成値は次のコマンド構文を使って設定できます。sft config [section.key] [value]

RDP構成オプション

キー

説明

rdp.screensize 1024x768など、好みのRDPウィンドウサイズを示す文字列値に設定します。 sft config rdp.screensize 800x600 sft config rdp.screensize 1024x768
rdp.fullscreen RDPセッションを全画面モードで開きたい場合は、これを true に設定します。 trueに設定した場合、rdp.screensizeの値は無視されます。 sft config rdp.fullscreen true sft config rdp.fullscreen false
rdp.client (macOSのみ)これを希望のRDPクライアント(Royal TSXの場合はroyaltsx、MacFreeRDPの場合はmacfreerdp)に設定します。このオプションが設定されていない場合、Okta Privileged Accessは最初にRoyal TSXの使用を試み、Royal TSXを使用できない場合にMacFreeRDPを使用します。 sft config rdp.client royaltsx sft config rdp.client macfreerdp

SSH構成オプション

キー

説明

ssh.save_privatekey_passwords trueに設定すると、Okta Privileged Accessクライアントはユーザーが入力したパスフレーズをワークステーションのローカル暗号化ストアに保存します。 sft config ssh.save_privatekey_passwords true sft config ssh.save_privatekey_passwords false
ssh.port_forward_method これをnetcatに設定すると、Okta Privileged Accessは、デフォルトのネイティブSSHポート転送を使用する代わりに、ポート転送の手段としてnetcat (nc)をリモートで実行します。 sft config ssh.port_forward_method netcat sft config ssh.port_forward_method native

ssh.insecure_forward_agent

この機能はWindowsクライアントと互換性がありません。

SSHコマンドの実行時にForwardAgentを設定する場合、これをホストに設定します。Okta Privileged Accessによって発行されたSSH資格情報は、sshエージェントに追加されません。このオプションは、外部で管理される資格情報(Okta Privileged Accessで管理されないSSH公開鍵など)を受け入れるように構成されているホストに対して使用します。

このオプションを設定しなかった場合、または値をnoneに設定した場合、Okta Privileged AccessはSSHエージェントを転送しなくなります。

sft config ssh.insecure_forward_agent host sft config ssh.insecure_forward_agent none

SSHエージェントの構成オプション

キー

説明

ssh_agent.enable trueに設定すると、Okta Privileged Accessクライアントは認証時にSSHエージェントを使用します。 sft config ssh_agent.enable true sft config ssh_agent.enable false
ssh_agent.keys このオプションは、SSHエージェントにロードするSSH秘密鍵の1つまたは複数のパスのJSON配列に設定します。--append フラグを使用して、このリストに値を追加します。

ヒント: Windows PowerShellでJSONリテラルを書き込む場合、内部引用符をエスケープします。例えば:

sft config ssh_agent.keys '[\"C:\\Users\\alice\\.ssh\\id_rsa\"]'

sft config ssh_agent.keys '["/Users/alice/.ssh/id_rsa"]' sft config ssh_agent.keys --append /Users/alice.ssh/id_rsa sft config ssh_agent.keys '[]'

ネットワーク構成オプション

キー

説明

network.forward_proxy このオプションを構成すると、Okta Privileged Accessクライアントは指定されたHTTPまたはHTTPS URLをHTTPトンネルとして使用します。 sft config network.forward_proxy https://your-proxy.example.com:3141

network.tls_use_bundled_cas

trueに設定すると、Okta Privileged AccessクライアントはTLS認証にバンドルされたCA証明書を使用します。同様に、falseに設定すると、クライアントはOSのCAリストを使用します。

このオプションはデフォルトで有効になっています。Oktaでは、これを無効にしないことを推奨します。特定のオペレーティングシステムにはCAリストの問題があり、バンドルされたCA証明書リストを使用する場合よりもパフォーマンスが低下する可能性があるからです。

sft config network.tls_use_bundled_cas true sft config network.tls_use_bundled_cas false

その他の構成オプション

キー

説明

service_auth.enable trueに設定すると、Okta Privileged Access クライアントはサービスユーザーの認証をサポートします。「サービスユーザー」をご覧ください。 sft config service_auth.enable true sft config service_auth.enable false
update.release_channel Okta Privileged Access クライアントは、デフォルトでは安定した更新チャンネルですが、テスト用更新チャンネルを使用するようにオプションを設定することで、より頻繁なリリースの受信を選択することもできます。 sft config update.release_channel test sft config update.release_channel stable
client.timeout_seconds

クライアントがサーバーからの応答を待機する最長時間を定義します(この時間に達すると要求を再送信します)。

  • このオプションを設定しなかった場合、または値を0に設定した場合、クライアントはデフォルト値である300秒を使用します。
  • このオプションに負の値を設定すると、タイムアウトは無効化されます。
sft config client.timeout_seconds 60 sft config client.timeout_seconds -1

環境変数

変数

説明

SFT_DEBUG 設定した場合、コマンドの実行時に内部ログとタイミングメッセージはstderrに出力されます。 SFT_DEBUG=1 sft list-servers
SFT_ALLOW_INSECURE_USERNAMES 設定した場合、標準外の文字を含んだユーザー名での接続が許可されます。 SFT_ALLOW_INSECURE_USERNAMES=1 sft ssh ...

SFTキーリング

SFTキーリングを有効にすると、state.jsonファイル内のすべてのプレーンテキストトークンが暗号化されます。システムで設定されたSFTキーリングは、ユーザーがOkta Privileged Accessにログインするか、サーバーにアクセスを試みると自動的に更新されます。

アクティブ化されたSFTキーリングを元に戻すことはできません。Okta Privileged Accessは、暗号化機能を備えていないcompatキーリングをすべてのオペレーティングシステム向けに採用しています。デフォルトのcompatキーリングに戻すには、ユーザーは登録し直して再ログインする必要があります。

開始する前に

  • SFTキーリングはアクセストークンを暗号化します。トークンを復号するためのキーを使用できなければ、復号は不可能です。これにより、未承認のデータ流出を防ぐことができます。
  • LinuxのSFTキーリングは、D-Busを使ってデスクトップに固有のSecretServiceに接続し、アクセストークンをプロアクティブに保護します。sftが、ロック解除されたSecretServiceにアクセスできない場合、これらのトークンを復号できなくなります。このために、デスクトップと非デスクトップの両方でLinuxを使用している場合、非デスクトップモードではトークンがロックアウトされる可能性があります。これを回避するには、シェル初期化スクリプトでSFT_KEYRINGcompatに設定してから再登録することで、非セキュアなコンパクトキーリングを使用できます。

キーリングのセットアップ

SFTキーリングは、すべてのデバイスに構成する必要があります。オペレーティングシステムはデフォルトのキーリングを備えており、最も適切なキーリングを決定します。構成でsystem変数を使用すると、オペレーティングシステムは最適なキーリングを自動的に選択します。

macOS

macOSでは、SFTキーリングはデフォルトで暗号化します。ユーザーのデフォルトフレームワークを使ってキーリングを設定できます。

$ defaults write com.scaleft.ScaleFT SFTKeyring system

環境変数を設定してキーリングを有効化することもできます。

export SFT_KEYRING=system

両方が設定されている場合、環境変数が優先されます。

暗号化を無効にするには、環境変数でsystemの代わりにcompatを使用してチームに登録し直します。

Windows

Windowsでは、SFTキーリングはデフォルトで暗号化します。レジストリを使ってキーリングを設定できます。

HKEY_LOCAL_MACHINE\Software\ScaleFT\SFT\Keyring

Or

HKEY_CURRENT_USER\Software\ScaleFT\SFT\Keyring

SFT_KEYRING環境変数を使ってキーリングを設定することもできます。

HKEY_LOCAL_MACHINEは、環境変数とCURRENT_USERエントリの両方に優先します。環境変数はCURRENT_USERエントリに優先します。

暗号化を無効にするには、レジストリキーをsystemの代わりにcompatに設定してチームに登録し直します。

FreeBSD / Linux

FreeBSDとLinuxでは、キーリングはD-Busデスクトップ環境のみで機能します。Linuxではデフォルトの暗号化方式はsystemですが、FreeBSDではcompatです。

SFT_KEYRING環境変数をcompatまたはsystemに設定する、または更新するには、シェルスクリプトに次の内容を追加します。

export SFT_KEYRING=system

または

export SFT_KEYRING=compat

関連項目

Okta Privileged Accessクライアントをインストールする

管理対象Okta Privileged Accessサーバーエージェント