|
![]() |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openpermis.examples.ejb.server.AuthorizedHelloEjbService
public class AuthorizedHelloEjbService
An EJB implementation of the HelloWorld service.
Access to a basic HelloWorld service is controlled with help of a policy decision point (PDP). It serves as a policy enforcement point for the HelloWorld application.
Field Summary | |
---|---|
protected static String |
ACTION_NAME
|
private org.openpermis.AuthorizationService |
authorizationService
The injected authorization service. |
private HelloEjbServiceRemote |
delegate
The actual service implementation to which we forward authorized requests. |
private static PrintStream |
LOG
Print stream to log messages to. |
protected static URI |
TARGET_RESOURCE_URI
|
Constructor Summary | |
---|---|
AuthorizedHelloEjbService()
Creates a hello world EJB which uses a default PDP and HelloWorld service. |
|
AuthorizedHelloEjbService(org.openpermis.AuthorizationService authorizationService,
HelloEjbServiceRemote delegate)
Creates an authorized HelloWorld service that uses the specified authorization service context for retrieving roles and making access decisions. |
Method Summary | |
---|---|
protected void |
assertInitialized()
Asserts that the service has been correctly initialized. |
private static HelloEjbServiceRemote |
createHelloWorldService()
Creates a basic hello world service for this EJB. |
private static org.openpermis.AuthorizationService |
createPolicyDecisionPoint()
Creates a authorization for the hello world EJB. |
private static org.openpermis.PolicyDecisionPoint |
createPolicyDecisionPoint(org.openpermis.cert.verify.CertificateVerifier certificateVerifier)
Creates a PolicyDecisionPoint from an attribute certificate located on the classpath. |
private static org.openpermis.subject.SubjectFinder |
createSubjectFinder(org.openpermis.cert.verify.CertificateVerifier certificateVerifier)
Creates a subject finder with subjects read from the classpath. |
String |
getHelloMessage(String name)
Returns a welcome message for the specified person. |
private static X509Certificate |
readSoaCertificate()
Reads the SoA certificate from the classpath. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final PrintStream LOG
protected static final URI TARGET_RESOURCE_URI
protected static final String ACTION_NAME
"collectLetters"
private final org.openpermis.AuthorizationService authorizationService
private final HelloEjbServiceRemote delegate
Constructor Detail |
---|
public AuthorizedHelloEjbService()
createPolicyDecisionPoint()
,
createHelloWorldService()
public AuthorizedHelloEjbService(org.openpermis.AuthorizationService authorizationService, HelloEjbServiceRemote delegate)
authorizationService
- a AuthorizationService
.delegate
- the real service implementation to which authorized requests are forwarded.Method Detail |
---|
private static final X509Certificate readSoaCertificate()
A policy decision point needs a trusted public key of the source of authority (SoA) to validate the attribute certificates (AC), including policies and roles. Future implementations will allow a advanced public key infrastructure (PKI).
null
if it could not be read.private static final org.openpermis.PolicyDecisionPoint createPolicyDecisionPoint(org.openpermis.cert.verify.CertificateVerifier certificateVerifier)
PolicyDecisionPoint
from an attribute certificate located on the classpath.
certificateVerifier
- the certificate verifier used to verify the attribute
certificate containing the policy.
PolicyDecisionPoint
requested or null
if it could not be created.private static final org.openpermis.subject.SubjectFinder createSubjectFinder(org.openpermis.cert.verify.CertificateVerifier certificateVerifier)
certificateVerifier
- The certificate verifier used to verify attribute certificates
used in the subject finder.
private static final org.openpermis.AuthorizationService createPolicyDecisionPoint()
private static final HelloEjbServiceRemote createHelloWorldService()
protected void assertInitialized() throws HelloEjbException
HelloEjbException
- if the service is not correctly initialized.public String getHelloMessage(String name) throws HelloEjbException
HelloEjbServiceRemote
getHelloMessage
in interface HelloEjbServiceRemote
name
- the name of the person to greet.
HelloEjbException
- if the service fails to determine a suitable welcome message.
|
![]() |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
OpenPermis Role Based Access Control 0.9.0 (Build 16)
2009/08/13 07:18:17
Copyright (c) 2002-2007 Ergon Informatik AG