ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

MATLAB ジョブ スケジューラ クラスターのセキュリティの設定

セキュリティ レベルの設定

クラスター ノード上の mjs サービスの開始前に、mjs_def ファイルの SECURITY_LEVEL パラメーターを使用して、MATLAB® ジョブ スケジューラのセキュリティ レベルを設定します。mjs_def ファイルは、許可される値を示し、それぞれのセキュリティ レベルについて簡単に説明します。

次の表では、MATLAB ジョブ スケジューラとそのジョブへのアクセスに使用できるセキュリティ レベルについて説明しています。

セキュリティ レベル説明ユーザー要件
0

セキュリティは設定されません。

  • すべてのユーザーがすべてのジョブにアクセスできます。

  • タスクは、ワーカー マシンで mjs プロセスを開始したユーザー権限 (通常は root または Local System) で実行されます。

  • これは既定であり、R2010b より前のすべてのリリースでこの動作になります。

  • ジョブはプログラマの既定のユーザー名と関連付けられていますが、保護は提供されません。

1

ジョブはその投入ユーザーにより識別されます。

  • すべてのユーザーはすべてのジョブにアクセスできますが、アクセスされたジョブが別のユーザーに属する場合は、ダイアログによって警告されます。

  • タスクは、ワーカー マシンで mjs プロセスを開始したユーザー権限 (通常は root または Local System) で実行されます。

  • ジョブ マネージャーへの初回アクセス時に、ダイアログでユーザー名の設定を求められます。

  • MATLAB ジョブ スケジューラのユーザー名を、システム/ネットワークのユーザー名と一致させる必要はありません。

  • パスワードは使用されません。

2

ジョブ マネージャー (MATLAB ジョブ スケジューラ) はジョブをパスワードで保護します。

  • ジョブおよびタスクはその投入ユーザーにより識別され、パスワードで保護されます。その他のユーザーはそのジョブにアクセスできません。

  • タスクは、ワーカー マシンで mjs プロセスを開始したユーザー権限 (通常は root または Local System) で実行されます。

  • MATLAB ジョブ スケジューラを起動すると、そのジョブ マネージャーの管理者アカウントの新しいパスワードを入力するように求められます。この管理者アカウントは、すべてのユーザーのジョブおよびタスクへのアクセスに使用できます。

  • MATLAB クライアントから MATLAB ジョブ スケジューラへの初回アクセス時にダイアログ ボックスが表示され、ユーザー名とパスワードの設定を求められます。

  • MATLAB ジョブ スケジューラのユーザー名とパスワードを、システム/ネットワークのユーザー名およびパスワードと一致させる必要はありません。

3

レベル 2 のセキュリティに加えて、タスクがワーカー マシン上の投入ユーザーの権限で実行されます。

  • ジョブおよびタスクはその投入ユーザーにより識別され、パスワードで保護されます。その他のユーザーはそのジョブにアクセスできません。

  • タスクは、ジョブの投入ユーザーの権限で実行されます。

  • UNIX システムでは、root ユーザーがクラスター ノード上の mjs プロセスを開始しなければなりません。

  • MATLAB ジョブ スケジューラはワーカーに対してセキュリティで保護された通信を使用しなければなりません (mjs_def ファイルで設定)。

  • MATLAB ジョブ スケジューラを起動すると、そのジョブ マネージャーの管理者アカウントの新しいパスワードを入力するように求められます。この管理者アカウントはすべてのユーザーのジョブおよびタスクへのアクセスに使用できます。

  • MATLAB クライアントから MATLAB ジョブ スケジューラへの初回アクセス時にダイアログ ボックスが表示され、ユーザー名とパスワードの設定を求められます。

  • ジョブ マネージャー (MATLAB ジョブ スケジューラ) のユーザー名とパスワードは、システム/ネットワークのユーザー名とパスワードと同じにしなければなりません。これは、ワーカーがタスクを実行するために、そのユーザーとしてログインしなければならないためです。

  • タスクが実行されるすべてのユーザー権限において、CHECKPOINTBASE フォルダーとそのすべてのサブフォルダーに対する読み取りおよび書き込み権限が必要です。

ジョブ マネージャーとワーカーは、同一のセキュリティ レベルで実行しなければなりません。セキュリティ レベルが非常に低い状態で実行されているワーカーは、ジョブ マネージャーによって信頼されないため、ジョブ マネージャーへの登録が失敗します。

ローカル、MATLAB ジョブ スケジューラおよびネットワークのパスワード

セキュリティ レベルが 0 より大きい場合、MATLAB ジョブ スケジューラを起動すると (startjobmanager コマンドなどによる)、このクラスターに対して admin という名前のクラスター ユーザー アカウントが作成され、この新しいアカウントのパスワードを入力するように求められます。クラスターの admin アカウントには、クラスターおよびクラスターの全ジョブへのアクセスに必要なすべての権限があります。

いずれのセキュリティ レベルでも、MATLAB ジョブ スケジューラはそれぞれのジョブを、そのジョブの投入ユーザーにより識別します。そのため、ユーザーが MATLAB ジョブ スケジューラまたはジョブにアクセスするときはいつでも、MATLAB ジョブ スケジューラはそのユーザーが誰であるかを認識しなければなりません。

セキュリティ レベル 0 では、MATLAB ジョブ スケジューラおよびジョブ オブジェクトの UserName プロパティが、そのジョブを作成したユーザーのログイン名に設定されます。この設定はいつでも変更できます。それより上のすべてのセキュリティ レベルでは、MATLAB ジョブ スケジューラへの初回アクセス時にユーザー名を求めるダイアログ ボックスが開きます。セキュリティ レベルが 2 または 3 の場合、パスワードも入力しなければなりません。MATLAB ジョブ スケジューラに入力するユーザー名とパスワードは、セキュリティ レベル 3 を使用している場合に "のみ" ネットワークのユーザー名およびパスワードと一致させる必要があります。それ以外の場合は、MATLAB ジョブ スケジューラで一意の新しいユーザー名とパスワードを作成できます。利便性を高めるため、ジョブにアクセスするたびにユーザー名とパスワードを入力する必要がないようにローカル コンピューター上にそれらを保存する期間を選択できます。

パスワードの変更および MATLAB ジョブ スケジューラからのログアウトの詳細については、changePassword および logout を参照してください。

セキュリティで保護された通信の設定

MATLAB ジョブ スケジューラ、クライアントおよびワーカーの間にセキュリティで保護された暗号化通信を確立するには、

  • USE_SECURE_COMMUNICATION = true

  • ALL_SERVER_SOCKETS_IN_CLUSTER = true (既定)

mjs_def ファイルに設定します。保護された暗号化通信は SSLSocket (TLSv1.2 のみを使用) によって提供されます。

メモ

mjs_def ファイルで ALL_SERVER_SOCKETS_IN_CLUSTER = false の場合、MATLAB ジョブ スケジューラとワーカーの間にのみ、セキュリティで保護された暗号化通信が確立されます。

また、mjs_def ファイルで SHARED_SECRET_FILE パラメーターにも値を指定し、MATLAB ジョブ スケジューラからこのファイルの場所が特定されるようにしなければなりません。このファイルを作成するには、次のいずれかのスクリプトを実行します。

  • matlabroot/toolbox/distcomp/bin/createSharedSecret (UNIX)

  • matlabroot\toolbox\distcomp\bin\createSharedSecret.bat (Windows)

シークレット ファイルにより、異なるマシン上のプロセス間で信頼が確立されます。

  • 共有ファイル システムでは、すべてのノードで同じシークレット ファイルをポイントでき、さらに同じ mjs_def ファイルを共有することもできます。

  • 非共有ファイル システムでは、提供されたスクリプトによりシークレット ファイルを作成してから、そのファイルを各ノードにコピーして、各ノードの mjs_def ファイルで特定のシークレット ファイルのある場所を確実に示します。

メモ:

MATLAB ジョブ スケジューラのセキュリティ レベル 3 を使用する場合は、セキュリティで保護された通信が必要です。