org.apache.qpid.server.security.auth
Interface PrincipalDatabase

All Known Implementing Classes:
PasswordFilePrincipalDatabase

public interface PrincipalDatabase

Represents a "user database" which is really a way of storing principals (i.e. usernames) and passwords.


Method Summary
 void setPassword(java.security.Principal principal, javax.security.auth.callback.PasswordCallback callback)
          Set the password for a given principal in the specified callback.
 

Method Detail

setPassword

void setPassword(java.security.Principal principal,
                 javax.security.auth.callback.PasswordCallback callback)
                 throws java.io.IOException,
                        javax.security.auth.login.AccountNotFoundException
Set the password for a given principal in the specified callback. This is used for certain SASL providers. The user database implementation should look up the password in any way it chooses and set it in the callback by calling its setPassword method.

Parameters:
principal - the principal
callback - the password callback that wants to receive the password
Throws:
javax.security.auth.login.AccountNotFoundException - if the account for specified principal could not be found
java.io.IOException - if there was an error looking up the principal