高度なカスタマイズ > ビジネスロジックのカスタマイズ > セキュリティラベルのカスタマイズ > カスタムセキュリティラベルの承認された参加者の指定
  
カスタムセキュリティラベルの承認された参加者の指定
カスタムセキュリティラベルは複数のラベル値を持つことができます。カスタムセキュリティラベルの、個々のセキュリティラベル値ではなく null 以外のすべてのセキュリティラベル値に、承認された参加者を設定できます。標準セキュリティラベルとカスタムセキュリティラベルのどちらでも、承認された参加者を複数の方法によって指定できます。
指定なし
UFID と EvaluatorClass のどちらも指定されていない場合、ラベル値はラベル値が適用されているオブジェクトへのアクセスを制限せず、情報マークになります。
UFID のみ
承認された参加者が UFID によって指定されている場合、ラベル値が適用されているオブジェクトにアクセスできる参加者 (ユーザー、ユーザー定義グループ、または組織) が UFID 値によって示されます。
EvaluatorClass のみ
エバリュエータクラスが指定されている場合、参加者のアクセス権を評価する際にそのブールメソッド isRestrictedBySecurityLabelValue (WTPrincipal principal, SecurityLabeled object, String label_name, String label_value) が呼び出され、その参加者が、ラベル値が適用されているオブジェクトにアクセスできるかどうかが判別されます。
UFID と EvaluatorClass の両方
UFID とエバリュエータクラスの両方が指定されている場合、super.isRestrictedBySecurityLabelValue(principal, label_name, label_value) メソッドが呼び出されて結果が使用された場合にのみ UFID が使用されます (つまり、isRestrictedBySecurityLabelValue メソッドがエバリュエータクラスでオーバーライドされていないか、オーバーライドされたメソッドで super.isRestrictedBySecurityLabelValue が呼び出されてその結果が使用された場合)。
* 
承認された参加者は個々のカスタムセキュリティラベル値には設定できませんが、エバリュエータクラスを設定する際に、各値の承認されたユーザーは異なる場合があります。エバリュエータクラスはそのオブジェクトに適用されている値ごとに異なる結果を返すことができます。
UFID を使用した承認された参加者の指定
承認された参加者に UFID のみを使用する場合、最も柔軟性が高いのは、ユーザー定義のグループを承認された参加者として指定する方法です。この方法であれば、「参加者管理」ユーティリティ、「組織」 > 「グループ」ページ、または LDAP ディレクトリサービス内のグループを管理するサードパーティ製 LDAP ツールを使用して、グループ内のメンバーを必要に応じて修正できます。カスタムセキュリティラベルの承認された参加者としてグループを指定した場合、グループのメンバーシップにその他のグループを含めることができます。そのカスタムセキュリティラベルの任意の値の承認された参加者ではないユーザーは、免除承諾の承認された参加者セットに含まれていることによってその値で規定される要件を一時的に免除されている場合を除き、そのラベル値が適用されているオブジェクトへのアクセスが拒否されます。1 つのセキュリティラベルで承認されても、別のセキュリティラベルで自動的に承認されることはありません。ユーザーがあるオブジェクトにアクセスするためには、そのオブジェクトに設定されているすべてのセキュリティラベルのアクセス権が付与されていなければなりません。
たとえば、ユーザーが ITAR トレーニングを完了したかどうかを追跡する Windchill 外のシステムが現場で使用されていることがあります。カスタムエバリュエータを使用して、Export Control 標準セキュリティラベル値に ITAR Clearance セキュリティラベル値を設定できます。カスタムエバリュエータは、外部システムに対して、そのユーザーがトレーニングを完了しているかどうかを照会します。エバリュエータメソッドはトレーニングを完了しているユーザーについて false を返し (外部システムによって yes が返った場合)、そのユーザーはそのセキュリティラベル値で規定されるアクセス権が付与されます。
カスタムエバリュエータを使用した承認された参加者の指定
カスタムエバリュエータクラスを使用して、カスタムセキュリティラベル値または標準セキュリティラベル値の承認された参加者かどうかを判別する場合、ブールメソッド isRestrictedBySecurityLabelValue (WTPrincipal principal, SecurityLabeled object, String label_name, String label_value) が呼び出されます。Windchill では、そのオブジェクトに適用されているセキュリティラベル値の承認された参加者であるかどうかを判別する際にブール値の結果が使用されます。
たとえば、ユーザーが ITAR トレーニングを完了したかどうかを追跡する Windchill 外のシステムが現場で使用されていることがあります。カスタムエバリュエータを使用して、Export Control 標準セキュリティラベル値に ITAR Clearance セキュリティラベル値を設定できます。カスタムエバリュエータは、外部システムに対して、そのユーザーがトレーニングを完了しているかどうかを照会します。エバリュエータメソッドはトレーニングを完了しているユーザーについて false を返し (外部システムによって yes が返った場合)、そのユーザーはそのセキュリティラベル値で規定されるアクセス権が付与されます。
カスタムエバリュエータと UFID を使用した承認された参加者の指定
カスタムエバリュエータクラスを使用してセキュリティラベル値の承認された参加者であるかどうかを判断する場合にはブールメソッド isRestrictedBySecurityLabelValue(WTPrincipal principal, SecurityLabeled object, String label_name, String label_value) が呼び出されますが、このメソッドは super.isRestrictedBySecurityLabelValue(principal, label_name, label_value) メソッドを呼び出すことで、セキュリティラベルのコンフィギュレーションファイルで指定されている UFID を採用することもできます。super.isRestrictedBySecurityLabelValue メソッドが呼び出された場合、エバリュエータは super.isRestrictedBySecurityLabelValue からの結果を自由に使用できます。
たとえば、ユーザーが ITAR トレーニングを完了したかどうかを追跡する Windchill 外のシステムが現場で使用されていることがあります。カスタムエバリュエータを使用して、Export Control 標準セキュリティラベルに ITAR Clearance-US セキュリティラベル値を設定できます。カスタムエバリュエータは、外部システムに対して、そのユーザーがトレーニングを完了しているかどうかを照会します。ユーザーがトレーニングを完了している場合、外部システムはカスタムエバリュエータメソッドに値 yes を返します。この後、super.isRestrictedBySecurityLabelValue メソッドが呼び出され、そのユーザーが US Persons グループのメンバーであるかどうかが評価されます。メンバーである場合、そのユーザーはそのセキュリティラベル値で規定されるアクセス権が付与され、このメソッドは false を返します。ユーザーがトレーニングを完了していない場合、外部システムはカスタムエバリュエータメソッドに値 no を返します。super.isRestrictedBySecurityLabelValue メソッドは呼び出されず、このメソッドは true を返し、ユーザーはそのセキュリティラベルで規定されるアクセス権が付与されません。