|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecteu.xtreemos.system.eventmachine.stage.AbstractStage
eu.xtreemos.system.eventmachine.stage.AbstractReceivingStage
eu.xtreemos.system.eventmachine.stage.Abstract2wayStage
eu.xtreemos.xosd.vo.rca.server.RCAServer
public class RCAServer
The service implementing the Resource Certification Authority server. The main purpose of the service is to sign the resource's identity certificate public key, and provide a signed attribute certificate to the resource. The service implements the RCA server and the RCA database that keeps the collections of the registered resources. A typical sequence of usage is as follows:
RCAClient
service on the node that
needs the registration and certification.applyForRegistration
with the resource's
details to add the resource
data to the list of the resources pending for the registration.confirmRegistration
using the ID of
the resource to add to the
list of the registered resources.RCAClient
to create a private and
public key pair and then call requestCertificate
to obtain a signed
identity certificate and a signed attribute certificate.
Field Summary | |
---|---|
protected eu.xtreemos.xosd.vo.rca.server.CRCAServerConfig |
config
|
(package private) static org.apache.log4j.Logger |
logger
|
protected ResourceRegistration |
resourceRegistration
The keeper of the resource registration collections. |
protected RCAServerProcessor |
serverProcessor
The implementation of the RCA server's main routines. |
Fields inherited from class eu.xtreemos.system.eventmachine.stage.Abstract2wayStage |
---|
context, counter, curContext, sink |
Fields inherited from class eu.xtreemos.system.eventmachine.stage.AbstractReceivingStage |
---|
queue |
Fields inherited from class eu.xtreemos.system.eventmachine.stage.AbstractStage |
---|
handlerChain, handlerGroup, handlerThreads, name, running |
Constructor Summary | |
---|---|
RCAServer()
|
Method Summary | |
---|---|
java.lang.Integer |
applyForRegistration(eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord resource)
Put the resource on the list of resources that can be registered, but need to wait for an authorised administrator to confirm the registration using the confirmRegistration call before
the resource can have
its certificates signed by the RCA. |
java.lang.Integer |
confirmRegistration(eu.xtreemos.xosd.vo.rca.ResourceID id)
Confirm the registration of a resource that has previously been applied for the registration using applyForRegistration . |
java.lang.String |
getHandledEventType()
|
java.util.ArrayList<eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord> |
getPendingResources()
Returns a list of resource descriptions describing the resources listed in the RCA DB as pending for registration. |
java.util.ArrayList<eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord> |
getRegisteredResources()
Returns a list of resource descriptions describing the resources listed in the RCA DB as registered. |
void |
handleEvent(java.lang.Object event)
|
void |
init()
|
eu.xtreemos.xosd.vo.rca.RCASignedResponse |
requestCertificate(eu.xtreemos.xosd.vo.rca.ResourceID id,
org.bouncycastle.jce.PKCS10CertificationRequest certRequest)
Serves the client's request for signing the certificate. |
eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord |
unregisterResource(eu.xtreemos.xosd.vo.rca.ResourceID id)
Remove the resource from the list of registered resources. |
Methods inherited from class eu.xtreemos.system.eventmachine.stage.Abstract2wayStage |
---|
getContext, removeContext, SendException, SendReply, setSink |
Methods inherited from class eu.xtreemos.system.eventmachine.stage.AbstractReceivingStage |
---|
dequeue, getSource |
Methods inherited from class eu.xtreemos.system.eventmachine.stage.AbstractStage |
---|
addHandler, addHandler, getName, getShortName, getThreadCount, processEvent, removeHandler, setThreadCount, start, stop |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
static org.apache.log4j.Logger logger
protected eu.xtreemos.xosd.vo.rca.server.CRCAServerConfig config
protected ResourceRegistration resourceRegistration
protected RCAServerProcessor serverProcessor
Constructor Detail |
---|
public RCAServer()
Method Detail |
---|
public java.util.ArrayList<eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord> getRegisteredResources()
public java.util.ArrayList<eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord> getPendingResources()
public java.lang.Integer applyForRegistration(eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord resource)
confirmRegistration
call before
the resource can have
its certificates signed by the RCA.
resource
- The descriptor of the resource applying for the
registration.
public java.lang.Integer confirmRegistration(eu.xtreemos.xosd.vo.rca.ResourceID id)
applyForRegistration
. After
this call, the RCA will sign certificates for the registered resource
(requestCertificate
).
id
- The id of the resource record signifying the resource to be
confirmed for the registration.
public eu.xtreemos.xosd.resmng.data.ResourceDescriptorRecord unregisterResource(eu.xtreemos.xosd.vo.rca.ResourceID id)
id
- The id of the resource record signifying the resource to be
removed for the list of registered resources.
public eu.xtreemos.xosd.vo.rca.RCASignedResponse requestCertificate(eu.xtreemos.xosd.vo.rca.ResourceID id, org.bouncycastle.jce.PKCS10CertificationRequest certRequest) throws java.lang.Exception
applyForRegistration
and confirmRegistration
have to precede
this call.
id
- The id of the resource that requests the certificate signature.certRequest
- The certificate signature request.
java.lang.Exception
public void init()
init
in interface eu.xtreemos.system.eventmachine.stage.IStage
init
in class eu.xtreemos.system.eventmachine.stage.AbstractStage
public java.lang.String getHandledEventType()
getHandledEventType
in class eu.xtreemos.system.eventmachine.stage.AbstractReceivingStage
public void handleEvent(java.lang.Object event) throws java.lang.Exception
handleEvent
in interface eu.xtreemos.system.eventmachine.queue.IEventHandler
handleEvent
in class eu.xtreemos.system.eventmachine.stage.AbstractReceivingStage
java.lang.Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |