Represents a security header that
will be added to the SOAP request.
Namespace: Microsoft.Web.Services2.Security
Assembly: Microsoft.Web.Services2 (in microsoft.web.services2.dll)
Dim security1 As New Security()
Public Class Security
Inherits SoapHeader
public class Security : SoapHeader
public ref class Security : public SoapHeader
public class Security extends SoapHeader
public class Security extends SoapHeader
The following code example demonstrates how a receiver can retrieve the an
X.509 certificate that was used to sign a SOAP request and then use that to
encrypt the SOAP response. To encrypt the SOAP message, an instance is
added to the Elements property of an instance of
Security. The Microsoft.Web.Services2.SoapContext.Security property is an instance of Security.
[Visual Basic]
<WebMethod()> _
Public Function EncryptResponse(ByVal str As String) As String
Dim context As SoapContext = RequestSoapContext.Current
Dim tok As X509SecurityToken = Nothing
Dim token As X509SecurityToken
For Each token In context.Security.Tokens
If Not token Is Nothing Then
tok = token
End If
Next
' Create a new instance of the EncryptedData class passing in the security token.
Dim enc As EncryptedData = New EncryptedData(tok)
' Add the instance of EncryptedData to the SOAP response.
ResponseSoapContext.Current.Security.Elements.Add(enc)
Return str
End Function
[C#]
[WebMethod]
public string EncryptResponse( String str )
{
SoapContext context = RequestSoapContext.Current;
X509SecurityToken tok = null;
foreach( X509SecurityToken token in context.Security.Tokens)
{
if( token != null )
{
tok = token;
}
}
// Create a new instance of the EncryptedData class passing in the security token.
EncryptedData enc = new EncryptedData( tok );
// Add the instance of EncryptedData to the SOAP response.
ResponseSoapContext.Current.Security.Elements.Add( enc );
return str;
}
A security header provides a mechanism for
attaching security-related information targeted at a specific receiver. A SOAP message can have multiple security
headers.
A typical security header can contain multiple tokens, signatures and encryption
keys.
Note: |
|---|
|
The value of the
MustUnderstand property is ignored and always has a value
of true.
|
System.Object
System.Web.Services.Protocols.SoapHeader
Microsoft.Web.Services2.Security.Security
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Development Platforms
Windows XP Home Edition, Windows XP Professional, Windows Server 2003, Windows Longhorn, and Windows 2000Target Platforms
Windows 2000, Windows 2000 Server, Windows 2000 Advanced Server, Windows XP Home Edition, Windows XP Professional, Windows Server 2003, Windows Longhorn, Pocket PC, Windows CE, Smart Phone