CSenWsSecurityHeader2 Class Reference
#include
<mw/SenWsSecurityHeader2.h>
Link against: SenUtils.lib
class CSenWsSecurityHeader2 : public CSenFragmentBase |
Public Member Functions |
---|
virtual | ~CSenWsSecurityHeader2() |
IMPORT_C CSenWsSecurityHeader2 * | NewL(RSenDocument, TXmlEngElement) |
IMPORT_C CSenWsSecurityHeader2 * | NewL(const TDesC8 &, RSenDocument, TXmlEngElement) |
IMPORT_C CSenWsSecurityHeader2 * | NewL(const TDesC8 &, const TDesC8 &, RSenDocument, TXmlEngElement) |
IMPORT_C CSenWsSecurityHeader2 * | NewLC(RSenDocument, TXmlEngElement) |
IMPORT_C CSenWsSecurityHeader2 * | NewLC(const TDesC8 &, RSenDocument, TXmlEngElement) |
IMPORT_C CSenWsSecurityHeader2 * | NewLC(const TDesC8 &, const TDesC8 &, RSenDocument, TXmlEngElement) |
IMPORT_C TInt | TimestampL(const TDesC8 &, const TDesC8 &, HBufC8 *&) |
IMPORT_C TInt | TimestampL(const TDesC8 &, HBufC8 *&) |
IMPORT_C HBufC8 * | UsernameTokenL(CSenIdentityProvider &) |
IMPORT_C HBufC8 * | UsernameTokenL(CSenIdentityProvider &, CSenWsSecurityHeader2::TPasswordType) |
IMPORT_C TInt | UsernameTokenL(const TDesC8 &, HBufC8 *&) |
IMPORT_C TInt | UsernameTokenL(const TDesC8 &, const TDesC8 &, HBufC8 *&) |
IMPORT_C TInt | UsernameTokenL(const TDesC8 &, const TDesC8 &, CSenWsSecurityHeader2::TPasswordType, HBufC8 *&) |
virtual IMPORT_C TPtrC8 | XmlNs() |
virtual IMPORT_C TPtrC8 | XmlNsPrefix() |
Inherited Functions |
---|
| CBase::CBase() |
| CBase::Delete(CBase *) |
| CBase::Extension_(TUint,TAny *&,TAny *) |
| CBase::operator new(TUint) |
| CBase::operator new(TUint,TAny *) |
| CBase::operator new(TUint,TLeave) |
| CBase::operator new(TUint,TLeave,TUint) |
| CBase::operator new(TUint,TUint) |
| CBase::~CBase() |
| CSenFragmentBase::AddAttributesL(const RAttributeArray &) |
| CSenFragmentBase::AddAttributesToElementL(TXmlEngElement,const RAttributeArray &) |
| CSenFragmentBase::AddContentL(const TDesC8 &) |
| CSenFragmentBase::AddNamespacesL() |
| CSenFragmentBase::AsDocumentL() |
| CSenFragmentBase::AsElementL() |
| CSenFragmentBase::AsXmlL() |
| CSenFragmentBase::AsXmlUnicodeL() |
| CSenFragmentBase::BaseConstructL(TXmlEngElement &,RSenDocument &) |
| CSenFragmentBase::BaseConstructL(const TDesC8 &) |
| CSenFragmentBase::BaseConstructL(const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &) |
| CSenFragmentBase::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,TXmlEngElement &) |
| CSenFragmentBase::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,TXmlEngElement &,RSenDocument &) |
| CSenFragmentBase::BaseConstructL(const TXmlEngElement &) |
| CSenFragmentBase::CSenFragmentBase() |
| CSenFragmentBase::ConsistsOfL(CSenFragmentBase &) |
| CSenFragmentBase::ConsistsOfL(TXmlEngElement &,TXmlEngElement &) |
| CSenFragmentBase::ContentL() |
| CSenFragmentBase::ContentOf(const TDesC8 &) |
| CSenFragmentBase::ExtractElement() |
| CSenFragmentBase::GetExtendedInterface(const TInt32) |
| CSenFragmentBase::LocalName()const |
| CSenFragmentBase::Namespace(const TDesC8 &) |
| CSenFragmentBase::NewL(TXmlEngElement &,RSenDocument &) |
| CSenFragmentBase::NewL(const TDesC8 &) |
| CSenFragmentBase::NewL(const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &) |
| CSenFragmentBase::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,TXmlEngElement &) |
| CSenFragmentBase::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,TXmlEngElement &,RSenDocument &) |
| CSenFragmentBase::NewL(const TXmlEngElement &) |
| CSenFragmentBase::NsPrefix()const |
| CSenFragmentBase::NsUri()const |
| CSenFragmentBase::OnContentL(const TDesC8 &,TInt) |
| CSenFragmentBase::OnDelegateParsingL(CSenFragmentBase &) |
| CSenFragmentBase::OnDelegateParsingL(const RTagInfo &,const RAttributeArray &,TInt) |
| CSenFragmentBase::OnEndDocumentL(TInt) |
| CSenFragmentBase::OnEndElementL(const RTagInfo &,TInt) |
| CSenFragmentBase::OnEndPrefixMappingL(const RString &,TInt) |
| CSenFragmentBase::OnError(TInt) |
| CSenFragmentBase::OnIgnorableWhiteSpaceL(const TDesC8 &,TInt) |
| CSenFragmentBase::OnProcessingInstructionL(const TDesC8 &,const TDesC8 &,TInt) |
| CSenFragmentBase::OnResumeParsingFromL(const RTagInfo &,TInt) |
| CSenFragmentBase::OnSkippedEntityL(const RString &,TInt) |
| CSenFragmentBase::OnStartDocumentL(const RDocumentParameters &,TInt) |
| CSenFragmentBase::OnStartElementL(const RTagInfo &,const RAttributeArray &,TInt) |
| CSenFragmentBase::OnStartPrefixMappingL(const RString &,const RString &,TInt) |
| CSenFragmentBase::OnWriteEndElementL(const RTagInfo &) |
| CSenFragmentBase::OnWriteStartElementL(const RTagInfo &,const RAttributeArray &) |
| CSenFragmentBase::RenameL(const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::RenameL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::RenameLocalNameL(const TDesC8 &) |
| CSenFragmentBase::RenameNamespaceL(const TDesC8 &) |
| CSenFragmentBase::RenameNamespaceL(const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::RenamePrefixL(const TDesC8 &) |
| CSenFragmentBase::ResetContentL() |
| CSenFragmentBase::SetContentHandler(CSenFragmentBase &) |
| CSenFragmentBase::SetContentL(const TDesC8 &) |
| CSenFragmentBase::SetContentOfL(const TDesC8 &,const TDesC8 &) |
| CSenFragmentBase::SetDocument(RSenDocument &) |
| CSenFragmentBase::SetOwner(CSenFragmentBase &) |
| CSenFragmentBase::StartSavingContent() |
| CSenFragmentBase::WriteAsXMLToL(RWriteStream &) |
| CSenFragmentBase::~CSenFragmentBase() |
Detailed Description
CSenWsSecurityHeader represents security header functionality according to oasis web services security (WSS) specifications (2004/01)
- Since
- Series60 3.0
Member Enumeration Documentation
Enum TPasswordType
Enumerator | Value | Description |
---|
EText | 1 | |
EDigest | | |
Constructor & Destructor Documentation
CSenWsSecurityHeader2 ( )
IMPORT_C | CSenWsSecurityHeader2 | ( | ) | [protected] |
~CSenWsSecurityHeader2 ( )
IMPORT_C | ~CSenWsSecurityHeader2 | ( | ) | [virtual] |
Member Function Documentation
BaseConstructL ( RSenDocument, TXmlEngElement )
Basic BaseConstructL function
BaseConstructL ( const TDesC8 &, RSenDocument, TXmlEngElement )
From CSenBaseFragment Basic BaseConstructL function
- Since
- Series60 3.0
Parameter | Description | aData | Data which will be used as current token (content) of this security header |
aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
BaseConstructL ( const TDesC8 &, const TDesC8 &, RSenDocument, TXmlEngElement )
From CSenBaseFragment Basic BaseConstructL function
- Since
- Series60 3.0
Parameter | Description | aData | Data which will be used as current token (content) of this security header |
aSecurityNs | A namespace to be set to the header. |
aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
NewL ( RSenDocument, TXmlEngElement )
Parameter | Description | aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
Returns: a pointer to new CSenWsSecurityHeader class instance.
NewL ( const TDesC8 &, RSenDocument, TXmlEngElement )
Parameter | Description | aData | Data to be set as header's content. |
aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
Returns: a pointer to new CSenWsSecurityHeader class instance.
NewL ( const TDesC8 &, const TDesC8 &, RSenDocument, TXmlEngElement )
Parameter | Description | aData | Data to be set as header's content. |
aSecurityNs | A namespace to be set to the header. |
aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
Returns: a pointer to new CSenWsSecurityHeader class instance.
NewLC ( RSenDocument, TXmlEngElement )
Parameter | Description | aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
Returns: a new CSenWsSecurityHeader class instance, which pointer is left on cleanup stack.
NewLC ( const TDesC8 &, RSenDocument, TXmlEngElement )
Parameter | Description | aData | Data to be set as header's content. |
aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
Returns: a new CSenWsSecurityHeader class instance, which pointer is left on cleanup stack.
NewLC ( const TDesC8 &, const TDesC8 &, RSenDocument, TXmlEngElement )
Parameter | Description | aData | Data to be set as header's content. |
aSecurityNs | A namespace to be set to the header. |
aDocument | The document which will be the owner of the elements of this header |
aElement | An element which will be parent for this header. |
Returns: a new CSenWsSecurityHeader class instance, which pointer is left on cleanup stack.
TimestampL ( const TDesC8 &, const TDesC8 &, HBufC8 *& )
Constructs a timestamp.
- Since
- Series60 5.0 Format of the timestamp is as follows: <wsu:Timestamp xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <wsu:Created>2001-09-13T08:42:00Z</wsu:Created> <wsu:Expires>2002-09-13T08:42:00Z</wsu:Expires> </wsu:Timestamp> The wsu namespace is declared inside this element. Based on chapter 10 from WS-Security 2004
Parameter | Description | aCreated | - creation time of token |
aExpires | - end of validation time for token |
aTimestamp | - a pointer to buffer containing the timestamp. Does not return NULL. Ownership is transferred to the caller. |
Returns: KErrNone or some system-wide Symbian error code.
TimestampL ( const TDesC8 &, HBufC8 *& )
Constructs a timestamp.
- Since
- Series60 5.0 Format of the timestamp is as follows: <wsu:Timestamp xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <wsu:Created>2001-09-13T08:42:00Z</wsu:Created> </wsu:Timestamp> The wsu namespace is declared inside this element. Based on chapter 10 from WS-Security 2004
Parameter | Description | aCreated | - creation time of token |
aTimestamp | - a pointer to buffer containing the timestamp. Does not return NULL. Ownership is transferred to the caller. |
Returns: KErrNone or some system-wide Symbian error code.
UsernameTokenL ( CSenIdentityProvider & )
Constructs a username token.
- Since
- Series60 3.0
<wsse:UsernameToken> <wsse:Username> username </wsse:Username> </wsse:UsernameToken>"
The above token assumes, that wsse namespace is declared in top level of the security header.
Parameter | Description | aIdentityProvider | Identity provider which is used to get the authorization ID used in username token. Method takes the AuthzID out from aIdentityProvider, and uses it as username for this token. Format of the token is as follows: |
Returns: a pointer to buffer containing the username token. Does not return NULL. Ownership is transferred to the caller. Method leaves with value KErrNotSupported, if a password type is not supported.
UsernameTokenL ( CSenIdentityProvider &, CSenWsSecurityHeader2::TPasswordType )
Constructs a username token.
- Since
- Series60 3.0
Format of the token is as follows (if password type is wsse:PasswordText):
<wsse:UsernameToken> <wsse:Username> username </wsse:Username> <wsse:Password> password </wsse:Password> </wsse:UsernameToken>"
If the password type is wsse:Password:Digest, then the password element will be declared as follows:
<wsse:Password Type="wsse:PasswordDigest">
The above token assumes, that wsse namespace is declared in top level of the security header.
Parameter | Description | aIdentityProvider | Identity provider which is used to get the authorization ID used in username token. Method takes the AuthzID out from aIdentityProvider, and uses it as username for this token. Password is also fetched from aIdentityProvider via calling Password() getter, which must return a Base64 [XML-Schema] encoded, SHA-1 hash value, of the UTF8 encoded password. |
aType | Specifies the type of the password, either wsse:PasswordText or wsse:PasswordDigest |
Returns: a pointer to buffer containing the username token. Does not return NULL. Ownership is transferred to the caller. Method leaves with value KErrNotSupported, if a password type is not supported.
UsernameTokenL ( const TDesC8 &, HBufC8 *& )
Constructs a username token. This method does not add the <Password> element, since it is optional for basic username tokens.
- Since
- Series60 3.0
Parameter | Description | aUsername | User name which is used in the username token. |
aToken | Ref-to-pointer where the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
Returns: KErrNone or some system-wide Symbian error code.
UsernameTokenL ( const TDesC8 &, const TDesC8 &, HBufC8 *& )
Constructs a username token using a password, too.
- Since
- Series60 5.0
Parameter | Description | aUsername | User name which is to be used in new token. |
aPassword | Password which is to be use in new token. The type will be set to default: wsse:PasswordDigest, defined in KSecurityAttrTypeText. This is a Base64 [XML-Schema] encoded, SHA-1 hash value, of the UTF8 encoded password. |
aToken | Ref-to-pointer in which the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
Returns: KErrNone or some system-wide Symbian error code.
UsernameTokenL ( const TDesC8 &, const TDesC8 &, CSenWsSecurityHeader2::TPasswordType, HBufC8 *& )
Constructs a username token using a password, too.
- Since
- Series60 5.0
<wsse:UsernameToken> <wsse:Username> username </wsse:Username> <wsse:Password Type="wsse:PasswordDigest"> password </wsse:Password> </wsse:UsernameToken>"
Parameter | Description | aUsername | User name which is to be used in new token. |
aPassword | Password which is to be use in new token This is a Base64 [XML-Schema] encoded, SHA-1 hash value, of the UTF8 encoded password. |
aType | Specifies the type of the password:EText, being default refers to wsse:PasswordText, but this method does not add this, since it can be omitted.EDigest: will add wsse:PasswordDigest attribute to the <Password> -element, as in here: |
aToken | Ref-to-pointer where the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
Returns: KErrNone or some system-wide Symbian error code.
XmlNs ( )
IMPORT_C TPtrC8 | XmlNs | ( | ) | [virtual] |
Constructs a security token reference.
- Since
- Series60 5.0 Format of the token reference is as follows: <wsse:SecurityTokenReference wsu:Id="..."> <wsse:Reference URI="..."/> </wsse:SecurityTokenReference>
The above token assumes, that wsse namespace is declared in top level of the security header.
- Since
- Series60 3.0
Returns: KErrNone or some system-wide Symbian error code. Basic getter for XML namespace of the WS security header. Subclasses should override this to use different namespace the WS security header namespace as string
XmlNsPrefix ( )
IMPORT_C TPtrC8 | XmlNsPrefix | ( | ) | [virtual] |
Basic getter for XML namespace prefix of the WS security header. Subclasses should override this to use different namespace prefix
- Since
- Series60 3.0
Returns: the WS security header namespace prefix as string