@Service @PerLookup public class SecurityContext extends AbstractSecurityContext
ThreadLocal,
InheritableThreadLocal,
Serialized Formadditional, initiator, subject| Constructor and Description |
|---|
SecurityContext() |
SecurityContext(String userName,
Subject subject) |
SecurityContext(String userName,
Subject subject,
String realm) |
SecurityContext(Subject subject)
Create a SecurityContext with given subject having
DistinguishedPrincipalCredential.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
didServerGenerateCredentials() |
Principal |
getCallerPrincipal()
This method returns the caller principal.
|
static SecurityContext |
getCurrent()
This method gets the SecurityContext stored in the
Thread Local Store (TLS) of the current thread.
|
AppServSecurityContext |
getCurrentSecurityContext() |
static Principal |
getDefaultCallerPrincipal() |
static SecurityContext |
getDefaultSecurityContext() |
static Subject |
getDefaultSubject() |
Set |
getPrincipalSet() |
Subject |
getSubject()
This method should be implemented by the subclasses to return
the Credentials of the caller principal.
|
static SecurityContext |
init()
Initialize the SecurityContext and handle the unauthenticated
principal case
|
AppServSecurityContext |
newInstance(String userName,
Subject subject) |
AppServSecurityContext |
newInstance(String userName,
Subject subject,
String realm) |
void |
postConstruct() |
static void |
reset(SecurityContext sc)
No need to unmarshall the unauthenticated principal....
|
static void |
setCurrent(SecurityContext sc)
This method sets the SecurityContext stored in the TLS.
|
void |
setCurrentSecurityContext(AppServSecurityContext context)
set the current security context
|
void |
setSecurityContextWithPrincipal(Principal principal)
set the SecurityContext with given Principal
|
static void |
setUnauthenticatedContext() |
void |
setUnauthenticatedSecurityContext()
set the unauthenticated context
|
String |
toString() |
getAdditionalPrincipal, setAdditionalPrincipalpublic SecurityContext(Subject subject)
subject - public SecurityContext()
public static SecurityContext init()
public static SecurityContext getDefaultSecurityContext()
public static Subject getDefaultSubject()
public static Principal getDefaultCallerPrincipal()
public static void reset(SecurityContext sc)
public static SecurityContext getCurrent()
public static void setCurrent(SecurityContext sc)
sc - The Security Context that should be stored in TLS.
This public static method needs to be protected
such that it can only be called by container code. Otherwise
it can be called by application code to set its subject (which the
EJB security manager will use to create a domain combiner,
and then everything the ejb does will be run as the
corresponding subject.public static void setUnauthenticatedContext()
public boolean didServerGenerateCredentials()
public Principal getCallerPrincipal()
getCallerPrincipal in interface AppServSecurityContextgetCallerPrincipal in class AbstractSecurityContextpublic Subject getSubject()
AbstractSecurityContextgetSubject in interface AppServSecurityContextgetSubject in class AbstractSecurityContextpublic Set getPrincipalSet()
public void postConstruct()
public AppServSecurityContext newInstance(String userName, Subject subject, String realm)
public AppServSecurityContext newInstance(String userName, Subject subject)
public void setCurrentSecurityContext(AppServSecurityContext context)
AppServSecurityContextpublic AppServSecurityContext getCurrentSecurityContext()
public void setUnauthenticatedSecurityContext()
AppServSecurityContextpublic void setSecurityContextWithPrincipal(Principal principal)
AppServSecurityContextCopyright © 2017. All rights reserved.