public final class WebUserDataPermission extends PermissionSE
WebUserDataPermission の名前(ターゲット名とも呼ばれる)は、コンテキストパスの相対 URL パターンによって Web リソースを識別します。
Permission
SE, 直列化された形式 コンストラクターと説明 |
---|
WebUserDataPermission(HttpServletRequest request) HttpServletRequest オブジェクトから新しい WebUserDataPermission を作成します。 |
WebUserDataPermission(StringSE name, StringSE actions) 指定された名前とアクションで新しい WebUserDataPermission を作成します。 |
WebUserDataPermission(StringSE urlPatternSpec, StringSE[] HTTPMethods, StringSE transportType) URLPatternSpec に対応する名前の新しい WebUserDataPermission を作成し、HTTP メソッドの配列とトランスポート型から構成されるアクションを作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
boolean | equals(ObjectSE o) 2 つの WebUserDataPermission オブジェクトが等しいかどうかを確認します。 |
StringSE | getActions() この WebUserDataPermission のアクションの正規の文字列表現を返します。 |
int | hashCode() この WebUserDataPermission のハッシュコード値を返します。 |
boolean | implies(PermissionSE permission) 引数 Permission がこの WebUserDataPermission によって「暗示される」かどうかを決定します。 |
checkGuardSE, getNameSE, newPermissionCollectionSE, toStringSE
cloneSE, finalizeSE, getClassSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
public WebUserDataPermission(StringSE name, StringSE actions)
名前には、権限が適用される Web リソースを識別する URLPatternSpec が含まれています。URLPatternSpec の構文は次のとおりです。
URLPatternList ::= URLPattern | URLPatternList colon URLPattern URLPatternSpec ::= null | URLPattern | URLPattern colon URLPatternList
null の URLPatternSpec は、権限コンストラクターによってデフォルトの URLPattern "/" に変換されます。空の文字列は正確な URLPattern であり、正確な URLPattern が発生する可能性のある URLPatternSpec の任意の場所で発生する可能性があります。URLPatternSpec の最初の URLPattern は、パターン型(exact、パスプレフィックス、拡張子、Jakarta Servlet Specification で定義されているデフォルト)のいずれかです。URLPatternSpec に URLPatternList が含まれている場合、URLPatternList のパターンは、権限が適用されないリソースを識別し、次のように最初のパターンのパターン型と値に依存します。
アクションパラメーターには、HTTP メソッドのコンマ区切りリストが含まれており、その後にコロンで HTTP メソッドから区切られた transportType が続く場合があります。
ExtensionMethod ::= any token as defined by RFC 2616 (that is, 1*[any CHAR except CTLs or separators]) HTTPMethod ::= "Get" | "POST" | "PUT" | "DELETE" | "HEAD" | "OPTIONS" | "TRACE" | ExtensionMethod HTTPMethodList ::= HTTPMethod | HTTPMethodList comma HTTPMethod HTTPMethodExceptionList ::= exclaimationPoint HTTPMethodList HTTPMethodSpec ::= emptyString | HTTPMethodExceptionList | HTTPMethodList transportType ::= "INTEGRAL" | "CONFIDENTIAL" | "NONE" actions ::= null | HTTPMethodSpec | HTTPMethodSpec colon transportType
HTTPMethodSpec で重複が発生した場合は、許可コンストラクターによって重複を排除する必要があります。
空の文字列 HTTPMethodSpec は、可能なすべての HTTP メソッドを含むリストの省略形です。
HTTPMethodSpec に HTTPMethodExceptionList が含まれている場合 (つまり、exclaimationPoint で始まる場合)、権限は例外リストに含まれるメソッドを除くすべてのメソッドに適用されます。
transportType のないアクション文字列は、TransportType として値 "NONE" を持つアクション文字列の省略形です。
transportType が "NONE" であることを表す付与された権限は、関連付けられたリソースに任意の接続型を使用してアクセスできることを示します。
name
- 権限が関係するアプリケーション固有の Web リソースを識別する URLPatternSpec。URLPatternSpec 内のすべての URLPattern は、デプロイされた Web アプリケーションモジュールのコンテキストパスに関連しており、同じ URLPattern が URLPatternSpec 内で 2 回以上出現することはできません。null の URLPatternSpec は、権限コンストラクターによってデフォルトの URLPattern "/" に変換されます。URLPatternSpec の URLPattern 要素内に出現するすべてのコロンは、RFC 2396 で定義されているように、エスケープされたエンコーディングで表す必要があります。actions
- 権限が関係する HTTP メソッドとトランスポート型を識別します。このパラメーターを介して渡される値が null または空の文字列の場合、権限は、すべての可能な HTTP メソッドと transportType "NONE" に対応するアクションで構成されます。public WebUserDataPermission(StringSE urlPatternSpec, StringSE[] HTTPMethods, StringSE transportType)
urlPatternSpec
- 権限が関係するアプリケーション固有の Web リソースを識別する URLPatternSpec。URLPatternSpec 内のすべての URLPattern は、デプロイされた Web アプリケーションモジュールのコンテキストパスに関連しており、同じ URLPattern が URLPatternSpec 内で 2 回以上出現することはできません。null の URLPatternSpec は、権限コンストラクターによってデフォルトの URLPattern "/" に変換されます。URLPatternSpec の URLPattern 要素内で発生するすべてのコロンは、RFC 2396 で定義されているように、エスケープされたエンコーディングで表す必要があります。HTTPMethods
- 各要素に HTTP メソッドの値が含まれる文字列の配列。このパラメーターを介して渡された値が null であるか、要素のない配列である場合、許可は、可能なすべての HTTP メソッドに対応するアクションで構成されます。transportType
- 値が transportType である文字列。このパラメーターを介して渡された値が null の場合、権限は transportType "NONE" に対応するアクションで構築されます。public WebUserDataPermission(HttpServletRequest request)
request
- 権限が関係する Jakarta Servlet 操作に対応する HttpServletRequest オブジェクト。権限名は、contextPath (HttpServletRequest.getContextPath()) の後に始まる requestURI (HttpServletRequest.getRequestURI()) の部分文字列です。部分文字列操作で文字列 "/" が返された場合、権限は名前として空の文字列を使用して構築されます。コンストラクターは、名前に含まれるすべてのコロン文字を、RFC 2396 で定義されているエスケープエンコーディングに変換する必要があります。権限のアクションの HTTP メソッドコンポーネントは、HttpServletRequest.getMethod() から取得されます。権限のアクションの TransportType コンポーネントは、HttpServletRequest.isSecure() を呼び出すことによって決定されます。public boolean equals(ObjectSE o)
参照パーミッションの URLPatternSpec は、最初のパターンが同等である場合、引数パーミッションの URLPatternSpec と同等であり、参照パーミッションの URLPatternList のパターンは、の URLPatternList のパターンと一致するのとまったく同じパターンのセットと集合的に一致します。引数の許可。
2 つのパーミッションオブジェクト P1 と P2 は、P1.implies(P2)と P2.implies(P1)の場合に限り、同等です。
PermissionSE
の equalsSE
o
- この WebUserDataPermission との同等性についてテストされている WebUserDataPermission オブジェクト。public StringSE getActions()
WebUserDataPermission のアクションの正規形式は、次の構文の説明で説明されています。
ExtensionMethod ::= any token as defined by RFC 2616 (that is, 1*[any CHAR except CTLs or separators]) HTTPMethod ::= "GET" | "POST" | "PUT" | "DELETE" | "HEAD" | "OPTIONS" | "TRACE" | ExtensionMethod HTTPMethodList ::= HTTPMethod | HTTPMethodList comma HTTPMethod HTTPMethodExceptionList ::= exclaimationPoint HTTPMethodList HTTPMethodSpec ::= emptyString | HTTPMethodExceptionList | HTTPMethodList transportType ::= "INTEGRAL" | "CONFIDENTIAL" | "NONE" actions ::= null | HTTPMethodList | HTTPMethodSpec colon transportType
権限の HTTP メソッドが HTTP メソッドセット全体に対応し、権限のトランスポート型が "INTEGRAL" または "CONFIDENTIAL" の場合、HTTP メソッドは emptyString HTTPMethodSpec によって正規形式で表されます。権限の HTTP メソッドが HTTP メソッドセット全体に対応し、権限のトランスポート型が "INTEGRAL" または "CONFIDENTIAL" でない場合、正規アクション値は null 値になります。
権限のメソッドが HTTP メソッドセット全体に対応していない場合は、重複を排除し、残りの要素を、事前定義されたメソッドが拡張メソッドの前に配置され、各メソッド分類内で対応するメソッドが辞書式順序で発生するように順序付けする必要があります。結果の(空でない String)HTTPMethodSpec は正規形式に含まれている必要があり、アクセス許可のトランスポート型が "INTEGRAL" または "CONFIDENTIAL" でない場合、正規アクションの値は正確に結果の HTTPMethodSpec である必要があります。
PermissionSE
の getActionsSE
public int hashCode()
返されるハッシュコードのプロパティは次のとおりである必要があります。
PermissionSE
の hashCodeSE
public boolean implies(PermissionSE permission)
これが当てはまるには、次のすべてが当てはまる必要があります。
URLPattern マッチングは、Jakarta Servlet マッチングルールを使用して実行されます。このルールでは、2 つの URL パターンが次のように関連している場合に一致します。
上記の比較はすべて大文字と小文字が区別されます。
PermissionSE
の impliesSE
permission
- "this" WebUserDataPermission は、引数の許可を意味するかどうかを確認するためにチェックされます。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.