CSenWsSecurityHeader Class Reference
class CSenWsSecurityHeader : public CSenBaseFragment |
CSenWsSecurityHeader represents security header functionality according to oasis web services security (WSS) specifications (2004/01) or older (2003/06) SenUtils.lib
- Since
- Series60 3.0
Public Member Functions |
---|
| ~CSenWsSecurityHeader() |
IMPORT_C TInt | BinarySecurityTokenL(const TDesC8 &, HBufC8 *&) |
IMPORT_C TInt | BinarySecurityTokenL(const TDesC8 &, const TDesC8 &, HBufC8 *&) |
IMPORT_C CSenWsSecurityHeader * | NewL() |
IMPORT_C CSenWsSecurityHeader * | NewL(const TDesC8 &) |
IMPORT_C CSenWsSecurityHeader * | NewL(const TDesC8 &, const TDesC8 &) |
IMPORT_C CSenWsSecurityHeader * | NewLC() |
IMPORT_C CSenWsSecurityHeader * | NewLC(const TDesC8 &) |
IMPORT_C CSenWsSecurityHeader * | NewLC(const TDesC8 &, const TDesC8 &) |
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 &, CSenWsSecurityHeader::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 &, CSenWsSecurityHeader::TPasswordType, HBufC8 *&) |
IMPORT_C TPtrC8 | XmlNs() |
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() |
| CSenBaseFragment::AllocContentSaverL() |
| CSenBaseFragment::AsElement() |
| CSenBaseFragment::AsXmlL() |
| CSenBaseFragment::AsXmlUnicodeL() |
| CSenBaseFragment::BaseConstructL(CSenXmlReader &) |
| CSenBaseFragment::BaseConstructL(const CSenElement &) |
| CSenBaseFragment::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenBaseFragment::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &) |
| CSenBaseFragment::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,CSenElement &) |
| CSenBaseFragment::BuildFrom(const TDesC8 &) |
| CSenBaseFragment::CSenBaseFragment() |
| CSenBaseFragment::CharactersL(const TDesC8 &,TInt,TInt) |
| CSenBaseFragment::ConsistsOfL(MSenFragment &) |
| CSenBaseFragment::Content() |
| CSenBaseFragment::ContentOf(const TDesC8 &) |
| CSenBaseFragment::DelegateParsingL(MSenFragment &) |
| CSenBaseFragment::DelegateParsingL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &) |
| CSenBaseFragment::DetachL() |
| CSenBaseFragment::EndElementL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenBaseFragment::EnsureNamespace(const TDesC8 &) |
| CSenBaseFragment::ExtractElement() |
| CSenBaseFragment::LocalName()const |
| CSenBaseFragment::Namespace(const TDesC8 &) |
| CSenBaseFragment::NewL(const CSenElement &) |
| CSenBaseFragment::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenBaseFragment::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &) |
| CSenBaseFragment::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,CSenElement &) |
| CSenBaseFragment::NsPrefix()const |
| CSenBaseFragment::NsUri()const |
| CSenBaseFragment::ParseL(const TDesC8 &) |
| CSenBaseFragment::ParseWithL(CSenXmlReader &) |
| CSenBaseFragment::Reader() |
| CSenBaseFragment::ResetContentL() |
| CSenBaseFragment::ResumeParsingFromL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenBaseFragment::SaveNamespacesL(const RAttributeArray &,TBool) |
| CSenBaseFragment::SetAttributesL(const RAttributeArray &) |
| CSenBaseFragment::SetContentOfL(const TDesC8 &,const TDesC8 &) |
| CSenBaseFragment::SetOwner(MSenFragment &) |
| CSenBaseFragment::SetReader(CSenXmlReader &) |
| CSenBaseFragment::StartElementL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &) |
| CSenBaseFragment::StartEntity(TDesC8 &) |
| CSenBaseFragment::WriteAsXMLToL(RWriteStream &) |
| CSenBaseFragment::WriteEndElementL(const TDesC8 &,const TDesC8 &,const TDesC8 &) |
| CSenBaseFragment::WriteStartElementL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &) |
| CSenBaseFragment::~CSenBaseFragment() |
Constructor & Destructor Documentation
CSenWsSecurityHeader()
IMPORT_C | CSenWsSecurityHeader | ( | ) | [protected] |
~CSenWsSecurityHeader()
IMPORT_C | ~CSenWsSecurityHeader | ( | ) | [virtual] |
Member Functions Documentation
BaseConstructL()
IMPORT_C void | BaseConstructL | ( | ) | [protected] |
Basic BaseConstructL function
BaseConstructL(const TDesC8 &)
IMPORT_C void | BaseConstructL | ( | const TDesC8 & | aData | ) | [protected] |
Parameters
const TDesC8 & aData | will be used as current token (content) of this security header |
BaseConstructL(const TDesC8 &, const TDesC8 &)
IMPORT_C void | BaseConstructL | ( | const TDesC8 & | aNsUri, |
| const TDesC8 & | aLocalName |
| ) | [protected] |
BaseConstructL offering possibility to set XML namespace and localname.
- Since
- Series60 3.0
Parameters
const TDesC8 & aNsUri | XML namespace URI for this fragment |
const TDesC8 & aLocalName | XML localname for this fragment |
BinarySecurityTokenL(const TDesC8 &, HBufC8 *&)
IMPORT_C TInt | BinarySecurityTokenL | ( | const TDesC8 & | aContent, |
| HBufC8 *& | aToken |
| ) | [static] |
Constructs a BinarySecurityToken.
- Since
- Series60 5.0
Parameters
const TDesC8 & aContent | Encoded EncryptedData which is to be used in token. |
HBufC8 *& aToken | Ref-to-pointer where the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
BinarySecurityTokenL(const TDesC8 &, const TDesC8 &, HBufC8 *&)
Constructs a BinarySecurityToken.
- Since
- Series60 5.0
Parameters
const TDesC8 & aContent | Encoded EncryptedData which is to be used in token. |
const TDesC8 & aValueType | Indicates what the security token is |
HBufC8 *& aToken | Ref-to-pointer where the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
NewL(const TDesC8 &)
Parameters
const TDesC8 & aData | Data to be set as header's content. |
NewL(const TDesC8 &, const TDesC8 &)
Parameters
const TDesC8 & aData | Data to be set as header's content. |
const TDesC8 & aSecurityNs | A namespace to be set to the header. |
NewLC(const TDesC8 &)
Parameters
const TDesC8 & aData | Data to be set as header's content. |
NewLC(const TDesC8 &, const TDesC8 &)
Parameters
const TDesC8 & aData | Data to be set as header's content. |
const TDesC8 & aSecurityNs | A namespace to be set to the header. |
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
Parameters
const TDesC8 & aCreated | - creation time of token |
const TDesC8 & aExpires | - end of validation time for token |
HBufC8 *& aTimestamp | - a pointer to buffer containing the timestamp. Does not return NULL. Ownership is transferred to the caller. |
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
Parameters
const TDesC8 & aCreated | - creation time of token |
HBufC8 *& aTimestamp | - a pointer to buffer containing the timestamp. Does not return NULL. Ownership is transferred to the caller. |
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.
Parameters
CSenIdentityProvider & 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: |
UsernameTokenL(CSenIdentityProvider &, CSenWsSecurityHeader::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.
Parameters
CSenIdentityProvider & 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. |
CSenWsSecurityHeader::TPasswordType aType | Specifies the type of the password, either wsse:PasswordText or wsse:PasswordDigest |
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
Parameters
const TDesC8 & aUsername | User name which is used in the username token. |
HBufC8 *& aToken | Ref-to-pointer where the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
UsernameTokenL(const TDesC8 &, const TDesC8 &, HBufC8 *&)
Constructs a username token using a password, too.
- Since
- Series60 5.0
Parameters
const TDesC8 & aUsername | User name which is to be used in new token. |
const TDesC8 & 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. |
HBufC8 *& aToken | Ref-to-pointer in which the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
UsernameTokenL(const TDesC8 &, const TDesC8 &, CSenWsSecurityHeader::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>"
Parameters
const TDesC8 & aUsername | User name which is to be used in new token. |
const TDesC8 & 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. |
CSenWsSecurityHeader::TPasswordType 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: |
HBufC8 *& aToken | Ref-to-pointer where the token will be allocated. Shouldn't contain any data when called, or that data will be lost. |
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
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
Member Enumerations Documentation
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.