|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.objectweb.proactive.ext.security.domain.DomainImpl
public class DomainImpl
Constructor Summary | |
---|---|
DomainImpl()
|
|
DomainImpl(java.lang.String securityFile)
|
Method Summary | |
---|---|
java.security.cert.X509Certificate |
getCertificate()
entity certificate |
byte[] |
getCertificateEncoded()
Entity's X509Certificate as byte array |
java.util.ArrayList<Entity> |
getEntities()
Retrieves all the entity's ID which contain this entity plus this entity ID. |
java.lang.String |
getName()
|
SecurityContext |
getPolicy(SecurityContext securityContext)
Ask the entity to fill the securityContext parameters with its own policy according to the communication details contained in the given securityContext |
ProActiveSecurityManager |
getProActiveSecurityManager()
|
java.security.PublicKey |
getPublicKey()
entity public key |
java.lang.String |
getVNName()
|
byte[][] |
publicKeyExchange(long sessionID,
byte[] myPublicKey,
byte[] myCertificate,
byte[] signature)
exchange entity certificate and/or public key if certificate are not available |
byte[] |
randomValue(long sessionID,
byte[] clientRandomValue)
Exchange random value between client and server entity |
byte[][] |
secretKeyExchange(long sessionID,
byte[] encodedAESKey,
byte[] encodedIVParameters,
byte[] encodedClientMacKey,
byte[] encodedLockData,
byte[] parametersSignature)
this method sends encoded secret parameters to the target entity |
long |
startNewSession(Communication policy)
start an unvalidated empty session |
void |
terminateSession(long sessionID)
terminate a given session |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DomainImpl()
public DomainImpl(java.lang.String securityFile)
Method Detail |
---|
public SecurityContext getPolicy(SecurityContext securityContext)
SecurityEntity
getPolicy
in interface SecurityDomain
getPolicy
in interface SecurityEntity
securityContext
- communication details allowing the entity to
look for a matching policy
public byte[] getCertificateEncoded() throws SecurityNotAvailableException
SecurityEntity
getCertificateEncoded
in interface SecurityDomain
getCertificateEncoded
in interface SecurityEntity
SecurityNotAvailableException
public java.util.ArrayList<Entity> getEntities() throws SecurityNotAvailableException
SecurityEntity
getEntities
in interface SecurityDomain
getEntities
in interface SecurityEntity
SecurityNotAvailableException
- if the target entity does not support securitypublic java.lang.String getName()
getName
in interface SecurityDomain
public void terminateSession(long sessionID) throws java.io.IOException, SecurityNotAvailableException
SecurityEntity
terminateSession
in interface SecurityEntity
SecurityNotAvailableException
- id security is not available
java.io.IOException
public java.security.cert.X509Certificate getCertificate() throws SecurityNotAvailableException
SecurityEntity
getCertificate
in interface SecurityEntity
SecurityNotAvailableException
- if security is not availablepublic ProActiveSecurityManager getProActiveSecurityManager()
public long startNewSession(Communication policy) throws SecurityNotAvailableException, RenegotiateSessionException
SecurityEntity
startNewSession
in interface SecurityEntity
policy
- policy associated to the session
SecurityNotAvailableException
- if security is not available
RenegotiateSessionException
- if the session immediatly expirespublic java.security.PublicKey getPublicKey() throws SecurityNotAvailableException
SecurityEntity
getPublicKey
in interface SecurityEntity
SecurityNotAvailableException
public byte[] randomValue(long sessionID, byte[] clientRandomValue) throws SecurityNotAvailableException, RenegotiateSessionException
SecurityEntity
randomValue
in interface SecurityEntity
sessionID
- the session IDclientRandomValue
- client random value
SecurityNotAvailableException
- if the security is not available
RenegotiateSessionException
- if the session has expiredpublic byte[][] publicKeyExchange(long sessionID, byte[] myPublicKey, byte[] myCertificate, byte[] signature) throws SecurityNotAvailableException, RenegotiateSessionException, KeyExchangeException
SecurityEntity
publicKeyExchange
in interface SecurityEntity
sessionID
- the session IDmyPublicKey
- encoded public keymyCertificate
- encoded certificatesignature
- encoded signature of previous paramaters
SecurityNotAvailableException
- if the security is not available
RenegotiateSessionException
- if the session has expired
KeyExchangeException
- if a key data/length/algorithm is not supportedpublic byte[][] secretKeyExchange(long sessionID, byte[] encodedAESKey, byte[] encodedIVParameters, byte[] encodedClientMacKey, byte[] encodedLockData, byte[] parametersSignature) throws SecurityNotAvailableException, RenegotiateSessionException
SecurityEntity
secretKeyExchange
in interface SecurityEntity
sessionID
- session IDencodedAESKey
- the AES key use to exchange secret messageencodedIVParameters
- Initilization parameters for the AES keyencodedClientMacKey
- MAC key for checking signature of future messagesencodedLockData
- random value to prevent message replays by an external attackerparametersSignature
- encoded signature of the previous parameters
SecurityNotAvailableException
- if this entity does not support security
RenegotiateSessionException
- if the session has expired or has been cancelled during this exchangepublic java.lang.String getVNName() throws SecurityNotAvailableException
SecurityNotAvailableException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |