Interface PublickeyAuthenticator
- All Known Implementing Classes:
AcceptAllPublickeyAuthenticator,AuthorizedKeyEntriesPublickeyAuthenticator,AuthorizedKeysAuthenticator,CachingPublicKeyAuthenticator,DefaultAuthorizedKeysAuthenticator,KeySetPublickeyAuthenticator,RejectAllPublickeyAuthenticator,StaticPublickeyAuthenticator
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
The
PublickeyAuthenticator is used on the server side to authenticate user public keys.- Author:
- Apache MINA SSHD Project
-
Method Summary
Modifier and TypeMethodDescriptionbooleanauthenticate(String username, PublicKey key, ServerSession session) Checks whether the givenPublicKeyis allowed to be used for authenticating user "username" in a session.static PublickeyAuthenticatorfromAuthorizedEntries(Object id, ServerSession session, Collection<? extends AuthorizedKeyEntry> entries, PublicKeyEntryResolver fallbackResolver)
-
Method Details
-
authenticate
boolean authenticate(String username, PublicKey key, ServerSession session) throws AsyncAuthException Checks whether the givenPublicKeyis allowed to be used for authenticating user "username" in a session.Note that the
keymay be aOpenSshCertificate. A typical implementation for a certificate would check that the certificate's CA key is known to be trusted as a certificate authority, and that the given user name is listed in the certificate's principals.- Parameters:
username- the usernamekey- the keysession- the server session- Returns:
trueif the key may be used;falseotherwise- Throws:
AsyncAuthException- If the authentication is performed asynchronously
-
fromAuthorizedEntries
static PublickeyAuthenticator fromAuthorizedEntries(Object id, ServerSession session, Collection<? extends AuthorizedKeyEntry> entries, PublicKeyEntryResolver fallbackResolver) throws IOException, GeneralSecurityException - Parameters:
id- Some kind of mnemonic identifier for the authenticator - used also intoString()session- TheServerSessionthat triggered this call - may benullif invoked by offline tool (e.g., unit test) or session context unknown to caller.entries- The entries to parse - ignored ifnull/emptyfallbackResolver- The public key resolver to use if none of the default registered ones works- Returns:
- A wrapper with all the parsed keys
- Throws:
IOException- If failed to parse the keys dataGeneralSecurityException- If failed to generate the relevant keys from the parsed data
-