Package org.eclipse.net4j.util.security

# Schnittstelle IAuthenticator2

Alle Superschnittstellen:
  `AdministrationPredicate`, `IAuthenticator`

public interface IAuthenticator2 extends IAuthenticator, AdministrationPredicate
Extension interface for authenticators that can update user credentials in addition to authenticating them.

Seit:
  3.4
Autor:
  Christian W. Damus (CEA LIST)

## Methodenübersicht

Modifizierer und Typ
Methode
Beschreibung
`boolean`
`isAdministrator(String userID)`
Queries whether a given user has administrative privileges.
`void`
`resetPassword(String adminID, char[] adminPassword, String userID, char[] newPassword)`
Performs an administrative resets of the password stored for the user identified by `userID`.
`void`
`updatePassword(String userID, char[] oldPassword, char[] newPassword)`
Updates the password stored for the user identified by `userID`.

### Von Schnittstelle geerbte Methoden org.eclipse.net4j.util.security.IAuthenticator

`authenticate`

## Methodendetails

### updatePassword

void updatePassword(String userID, char[] oldPassword, char[] newPassword)
Updates the password stored for the user identified by `userID`. The `oldPassword` is authenticated as per usual and is replaced by the `newPassword` only (and atomically) on success.

Parameter:
  `userID` - the ID of the user whose password is to be updated
  `oldPassword` - the user's current password attempt to verify against the stored password
  `newPassword` - the new password to replace the `oldPassword`
Löst aus:
  `SecurityException` - on any failure to authenticate the `oldPassword` or validate and/or set the `newPassword`

### resetPassword

void resetPassword(String adminID, char[] adminPassword, String userID, char[] newPassword)
Performs an administrative resets of the password stored for the user identified by `userID`. The `adminID` and `adminPassword` must authenticate to permit the `userID`'s password to be set to the `newPassword`.

Parameter:
  `adminID` - the ID of the administrator requesting the reset
  `adminPassword` - the administrator's password
  `userID` - the ID of the user whose password is to be reset
  `newPassword` - the new password to replace the user's old password
Löst aus:
  `SecurityException` - on any failure to authenticate the `oldPassword` or validate and/or set the `newPassword`

### isAdministrator

boolean isAdministrator(String userID)
Queries whether a given user has administrative privileges.

Angegeben von:
  `isAdministrator` in Schnittstelle `AdministrationPredicate`
Parameter:
  `userID` - an user ID, which may or may not exist
Gibt zurück:
  whether the userID exists and has administrative privileges