|
![]() |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openpermis.examples.ejb.server.HelloWorldService
public class HelloWorldService
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 HelloWorldServiceRemote |
delegate
The actual service implementation to which we forward authorized requests. |
protected static URI |
TARGET_RESOURCE_URI
|
Constructor Summary | |
---|---|
HelloWorldService()
Creates a hello world EJB which uses a default PDP and HelloWorld service. |
|
HelloWorldService(org.openpermis.AuthorizationService authorizationService,
HelloWorldServiceRemote 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 HelloWorldServiceRemote |
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.CertificateVerifier certificateVerifier)
Creates a PolicyDecisionPoint from an attribute certificate located on 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. |
private static org.openpermis.repository.SubjectRepository |
readSubjectRepository(org.openpermis.cert.CertificateVerifier certificateVerifier)
Creates a subject repository with subjects read from the classpath. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final URI TARGET_RESOURCE_URI
protected static final String ACTION_NAME
"collectLetters"
private final org.openpermis.AuthorizationService authorizationService
private final HelloWorldServiceRemote delegate
Constructor Detail |
---|
public HelloWorldService()
createPolicyDecisionPoint()
,
createHelloWorldService()
public HelloWorldService(org.openpermis.AuthorizationService authorizationService, HelloWorldServiceRemote 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.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.repository.SubjectRepository readSubjectRepository(org.openpermis.cert.CertificateVerifier certificateVerifier)
certificateVerifier
- The certificate verifier used to verify attribute certificates.
Used in the subject repository.
null
in case of an error.private static final org.openpermis.AuthorizationService createPolicyDecisionPoint()
private static final HelloWorldServiceRemote createHelloWorldService()
protected void assertInitialized() throws HelloWorldException
HelloWorldException
- if the service is not correctly initialized.public String getHelloMessage(String name) throws HelloWorldException
HelloWorldServiceRemote
getHelloMessage
in interface HelloWorldServiceRemote
name
- the name of the person to greet.
HelloWorldException
- 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 |
PERMIS Role Based Access Control 0.4.0 (Build 15)
2009/05/20 08:15:52
Copyright (c) 2002-2007 Ergon Informatik AG