インターフェース Authentication

    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   抽象メソッド  
      修飾子と型 メソッド 説明
      java.util.Collection<? extends GrantedAuthority>getAuthorities()
      プリンシパルが許可されたことを権限に示すために、AuthenticationManager によって設定されます。
      java.lang.ObjectgetCredentials()
      プリンシパルが正しいことを証明する資格情報。
      java.lang.ObjectgetDetails()
      認証リクエストに関する追加の詳細を保存します。
      java.lang.ObjectgetPrincipal()
      認証されるプリンシパルの ID。
      booleanisAuthenticated()
      認証トークンを AuthenticationManager に提示する必要があるかどうかを AbstractSecurityInterceptor に示すために使用されます。
      voidsetAuthenticated​(boolean isAuthenticated)
      詳細については、isAuthenticated() を参照してください。
      • インターフェース java.security.Principal から継承されたメソッド

        equals, getName, hashCode, implies, toString
    • メソッドの詳細

      • getAuthorities

        java.util.Collection<? extends GrantedAuthority> getAuthorities()
        プリンシパルが許可されたことを権限に示すために、AuthenticationManager によって設定されます。信頼できる AuthenticationManager によって設定されていない限り、クラスはこの値が有効であることに依存してはならないことに注意してください。

        実装では、返されたコレクション配列への変更が認証オブジェクトの状態に影響を与えないようにするか、変更不可能なインスタンスを使用する必要があります。

        戻り値:
        プリンシパルに付与された権限、またはトークンが認証されていない場合は空のコレクション。非 null。
      • getCredentials

        java.lang.Object getCredentials()
        プリンシパルが正しいことを証明する資格情報。これは通常パスワードですが、AuthenticationManager に関連するものであれば何でもかまいません。発信者は資格情報を入力する必要があります。
        戻り値:
        Principal の身元を証明する資格情報
      • getDetails

        java.lang.Object getDetails()
        認証リクエストに関する追加の詳細を保存します。これらは、IP アドレス、証明書のシリアル番号などです。
        戻り値:
        認証リクエストに関する追加の詳細、または使用しない場合は null 
      • getPrincipal

        java.lang.Object getPrincipal()
        認証されるプリンシパルの ID。ユーザー名とパスワードを使用した認証リクエストの場合、これはユーザー名になります。呼び出し元は、認証リクエストのプリンシパルを設定することが期待されています。

        多くの場合、 AuthenticationManager 実装は、アプリケーションが使用するプリンシパルとして、より豊富な情報を含む Authentication を返します。認証プロバイダーの多くは、UserDetails オブジェクトをプリンシパルとして作成します。

        戻り値:
        認証される Principal または認証後の認証されたプリンシパル。
      • isAuthenticated

        boolean isAuthenticated()
        認証トークンを AuthenticationManager に提示する必要があるかどうかを AbstractSecurityInterceptor に示すために使用されます。通常、AuthenticationManager (または、より頻繁には、その AuthenticationProvider の 1 つ)は、認証が成功した後、不変の認証トークンを返します。この場合、トークンは true をこのメソッドに安全に返すことができます。true を返すとパフォーマンスが向上します。リクエストごとに AuthenticationManager を呼び出す必要がなくなるためです。

        セキュリティ上の理由から、このインターフェースの実装は、不変であるか、元の作成以降プロパティが変更されていないことを保証する方法がない限り、このメソッドから true を返すことに十分注意する必要があります。

        戻り値:
        トークンが認証され、AbstractSecurityInterceptor が再認証のために再度 AuthenticationManager にトークンを提示する必要がない場合は true。
      • setAuthenticated

        void setAuthenticated​(boolean isAuthenticated)
                       throws java.lang.IllegalArgumentException
        詳細については、isAuthenticated() を参照してください。

        実装では、false パラメーターを使用してこのメソッドを呼び出すことをに許可する必要があります。これは、さまざまなクラスで使用され、認証トークンを信頼しないことを指定するためです。実装が true パラメーター(認証トークンが信頼されることを示す - 潜在的なセキュリティリスク)での呼び出しを拒否する場合、実装は IllegalArgumentException をスローする必要があります。

        パラメーター:
        isAuthenticated - トークンを信頼する必要がある場合は true (例外が発生する可能性があります)、トークンを信頼しない場合は false 
        例外:
        java.lang.IllegalArgumentException - 実装が不変であるか、isAuthenticated() への独自の代替アプローチを実装しているため、認証トークンを(引数として true を渡すことにより)信頼しようとする試みが拒否された場合