#include <DelegationInterface.h>
Public Member Functions | |
DelegationProviderSOAP (const std::string &credentials) | |
DelegationProviderSOAP (const std::string &cert_file, const std::string &key_file, std::istream *inpwd=NULL) | |
bool | DelegateCredentialsInit (MCCInterface &mcc_interface, MessageContext *context, ServiceType stype=ARCDelegation) |
bool | DelegateCredentialsInit (MCCInterface &mcc_interface, MessageAttributes *attributes_in, MessageAttributes *attributes_out, MessageContext *context, ServiceType stype=ARCDelegation) |
bool | UpdateCredentials (MCCInterface &mcc_interface, MessageContext *context, const DelegationRestrictions &restrictions=DelegationRestrictions(), ServiceType stype=ARCDelegation) |
bool | UpdateCredentials (MCCInterface &mcc_interface, MessageAttributes *attributes_in, MessageAttributes *attributes_out, MessageContext *context, const DelegationRestrictions &restrictions=DelegationRestrictions(), ServiceType stype=ARCDelegation) |
bool | DelegatedToken (XMLNode parent) |
const std::string & | ID (void) |
Extension of DelegationProvider with SOAP exchange interface. This class is also a temporary container for intermediate information used during delegation procedure.
Arc::DelegationProviderSOAP::DelegationProviderSOAP | ( | const std::string & | credentials | ) |
Creates instance from provided credentials. Credentials are used to sign delegated credentials.
Arc::DelegationProviderSOAP::DelegationProviderSOAP | ( | const std::string & | cert_file, | |
const std::string & | key_file, | |||
std::istream * | inpwd = NULL | |||
) |
Creates instance from provided credentials. Credentials are used to sign delegated credentials. Arguments should contain filesystem path to PEM-encoded certificate and private key. Optionally cert_file may contain certificates chain.
bool Arc::DelegationProviderSOAP::DelegateCredentialsInit | ( | MCCInterface & | mcc_interface, | |
MessageAttributes * | attributes_in, | |||
MessageAttributes * | attributes_out, | |||
MessageContext * | context, | |||
ServiceType | stype = ARCDelegation | |||
) |
Extended version of DelegateCredentialsInit(MCCInterface&,MessageContext*). Additionally takes attributes for request and response message to make fine control on message processing possible.
bool Arc::DelegationProviderSOAP::DelegateCredentialsInit | ( | MCCInterface & | mcc_interface, | |
MessageContext * | context, | |||
ServiceType | stype = ARCDelegation | |||
) |
Performs DelegateCredentialsInit SOAP operation. As result request for delegated credentials is received by this instance and stored internally. Call to UpdateCredentials should follow.
bool Arc::DelegationProviderSOAP::DelegatedToken | ( | XMLNode | parent | ) |
Generates DelegatedToken element. Element is created as child of provided XML element and contains structure described in delegation.wsdl.
const std::string& Arc::DelegationProviderSOAP::ID | ( | void | ) | [inline] |
Returns the identifier provided by service accepting delegated credentials. This identifier may then be used to refer to credentials stored at service.
bool Arc::DelegationProviderSOAP::UpdateCredentials | ( | MCCInterface & | mcc_interface, | |
MessageAttributes * | attributes_in, | |||
MessageAttributes * | attributes_out, | |||
MessageContext * | context, | |||
const DelegationRestrictions & | restrictions = DelegationRestrictions() , |
|||
ServiceType | stype = ARCDelegation | |||
) |
Extended version of UpdateCredentials(MCCInterface&,MessageContext*). Additionally takes attributes for request and response message to make fine control on message processing possible.
bool Arc::DelegationProviderSOAP::UpdateCredentials | ( | MCCInterface & | mcc_interface, | |
MessageContext * | context, | |||
const DelegationRestrictions & | restrictions = DelegationRestrictions() , |
|||
ServiceType | stype = ARCDelegation | |||
) |
Performs UpdateCredentials SOAP operation. This concludes delegation procedure and passes delagated credentials to DelegationConsumerSOAP instance.