セキュリティー例外が生成されるのは、入力ノードまたは SecurityPEP ノードでセキュリティーを処理したときにメッセージ・フロー・セキュリティー障害が発生した場合です。
セキュリティー例外は、入力ノード上の他のエラーとは異なる方法で処理されます。 エラーは通常、入力ノード上でキャッチされ、エラー処理のために Failure ターミナルにルーティングされますが、セキュリティー例外は同じようには処理されません。 デフォルトでは、ブローカーはセキュリティー例外をメッセージ・フロー内でキャッチできず、メッセージを取り消すか、またはエラーを戻します (HTTP の場合など)。 入力ノードのセキュリティー例外は、ログを満杯にしてシステムを不安定にするセキュリティー・サービス妨害攻撃を防止するために、 この方法で管理されます。
ただし、SecurityPEP ノードのセキュリティー例外に関しては管理方法が異なります。 SecurityPEP ノードでセキュリティー操作が失敗すると、セキュリティー例外が生じ、通常のリカバリー可能例外でラップされます。 この通常のリカバリー可能例外では、メッセージ・フローによって指定されたエラー処理が起動されます。
メッセージ・フローがセキュア域に置かれるように設計されており、セキュリティー例外の処理を明示的に実行したい場合は、MQInputまたは HTTPInput ノード上で「セキュリティーの例外を通常の例外として処理」プロパティーを選択することができます。 このプロパティーによりセキュリティー例外は、メッセージ・フロー内の他の例外と同じように処理されます。
「デフォルト伝搬」セキュリティー・プロファイルを出力ノードまたは要求ノードに関連付けると、マップされたトークン・タイプまたはソース・セキュリティー・トークンのトークン・タイプはそのノードのトランスポート・デフォルトと同じにしなければならず、そうでない場合にはセキュリティー例外が生じます。 例えば、MQOutput ノードの場合、トークン・タイプは Username でなければならず、HTTPRequest ノードではトークン・タイプは Username + Password で、SOAPRequest ノードの場合、ポリシー・セットとバインディング、またはトランスポート・バインディングのどちらかで定義されたタイプでなければなりません。
セキュリティー例外の原因を診断する方法について詳しくは、 セキュリティー問題の診断を参照してください。