Package org.apache.catalina

# Interface TomcatPrincipal

All Superinterfaces:
  `Principal`

All Known Implementing Classes:
  `GenericPrincipal`, `UserDatabaseRealm.UserDatabasePrincipal`

public interface TomcatPrincipal extends Principal
Defines additional methods implemented by `Principal`s created by Tomcat's standard `Realm` implementations.

## Method Summary

Modifier and Type
Method
Description
`GSSCredential`
`getGssCredential()`
`Principal`
`getUserPrincipal()`
`void`
`logout()`
Calls logout, if necessary, on any associated JAASLoginContext.

### Methods inherited from interface java.security.Principal

`equals, getName, hashCode, implies, toString`

## Method Details

### getUserPrincipal

Principal getUserPrincipal()

Returns:
  The authenticated Principal to be exposed to applications.

### getGssCredential

GSSCredential getGssCredential()

Returns:
  The user's delegated credentials.

### logout

void logout() throws Exception
Calls logout, if necessary, on any associated JAASLoginContext. May in the future be extended to cover other logout requirements.

Throws:
  `Exception` - If something goes wrong with the logout. Uses Exception to allow for future expansion of this method to cover other logout mechanisms that might throw a different exception to LoginContext