アノテーション型 HttpConstraint
@DocumentedSE @RetentionSE(RUNTIMESE) public @interface HttpConstraint
このアノテーションはServletSecurity
アノテーション内で使用され、対応するHttpMethodConstraint
要素がServletSecurity
アノテーション内で発生しないすべての HTTP プロトコルメソッドに適用されるセキュリティ制約を表します。すべてのデフォルト値を返す
@HttpConstraint
が、すべてのデフォルト値以外を返す少なくとも 1 つのHttpMethodConstraint
と組み合わせて発生する特殊なケースの場合、@HttpConstraint
は、セキュリティが適用される HTTP プロトコルメソッドのいずれにもセキュリティ制約が適用されないことを表します。それ以外の場合は制約が適用されます。この例外は、@HttpConstraint
のそのような潜在的に非特定の使用が、そのようなメソッドの保護されていないアクセスを明示的に確立する制約を生じさせないことを保証するために行われます。そうでなければ制約の対象にならないことを考えると。- 導入:
- Servlet 3.0
オプション要素のサマリー
オプション要素 修飾子と型 オプションの要素 説明 StringSE[]
rolesAllowed
認可されたロールの名前。ServletSecurity.TransportGuarantee
transportGuarantee
リクエストが到着する接続が満たす必要があるデータ保護要件(つまり、SSL/TLS が必要かどうか)。ServletSecurity.EmptyRoleSemantic
value
デフォルトの認証セマンティック。
要素の詳細
value
ServletSecurity.EmptyRoleSemantic value
デフォルトの認証セマンティクス。rolesAllowed
が空でない配列を返す場合、この値は重要ではありません。また、rolesAllowed に空でない配列が指定されている場合は指定しないでください。- 戻り値:
rolesAllowed
が空の(つまり長さがゼロの)配列を返すときに適用されるServletSecurity.EmptyRoleSemantic
- デフォルト:
- jakarta.servlet.annotation.ServletSecurity.EmptyRoleSemantic.PERMIT
transportGuarantee
ServletSecurity.TransportGuarantee transportGuarantee
リクエストが到着する接続が満たす必要があるデータ保護要件(つまり、SSL/TLS が必要かどうか)。- 戻り値:
- 接続によって提供される必要があるデータ保護を示す
ServletSecurity.TransportGuarantee
- デフォルト:
- jakarta.servlet.annotation.ServletSecurity.TransportGuarantee.NONE
rolesAllowed
StringSE[] rolesAllowed
承認されたロールの名前。rolesAllowed に重複するロール名があっても意味はなく、アノテーションの実行時処理中に破棄される可能性があります。文字列 "*" は、ロール名として特別な意味を持ちません (rolesAllowed に出現した場合)。- 戻り値:
- 0 個以上のロール名の配列。配列にゼロ要素が含まれている場合、その意味は
value
メソッドによって返されるEmptyRoleSemantic
によって異なります。value
が DENY を返し、rolesAllowed
が長さゼロの配列を返す場合、認証の状態と ID に関係なくアクセスが拒否されます。逆に、value
がPERMIT
を返す場合は、認証の状態と ID に関係なくアクセスが許可されることを示します。配列に 1 つ以上のロールの名前が含まれている場合、アクセスは、(value
メソッドによって返されるEmptyRoleSemantic
とは無関係に)少なくとも 1 つの名前付きロールのメンバーシップに依存していることを示します。
- デフォルト:
- {}