EndpointIdentity.CreateRsaIdentity Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt eine RSA-Identität.
Überlädt
CreateRsaIdentity(X509Certificate2) |
Erstellt mit dem angegebenen X.509-Zertifikat eine RSA-Identität. |
CreateRsaIdentity(String) |
Erstellt eine RSA-Identität mit dem angegebenen öffentlichen Schlüssel. |
Hinweise
Ein sicherer WCF-Client, der mit dieser Identität eine Verbindung zu einem Endpunkt herstellt, stellt sicher, dass die vom Server bereitgestellten Ansprüche einen Anspruch beinhalten, der den zum Erstellen dieser Identität verwendeten öffentlichen RSA-Schlüssel enthält.
Eine dieser statischen Methoden erstellt eine Instanz von RsaEndpointIdentity, indem sie ihren Konstruktor RsaEndpointIdentity aufruft.
CreateRsaIdentity(X509Certificate2)
Erstellt mit dem angegebenen X.509-Zertifikat eine RSA-Identität.
public:
static System::ServiceModel::EndpointIdentity ^ CreateRsaIdentity(System::Security::Cryptography::X509Certificates::X509Certificate2 ^ certificate);
public static System.ServiceModel.EndpointIdentity CreateRsaIdentity (System.Security.Cryptography.X509Certificates.X509Certificate2 certificate);
static member CreateRsaIdentity : System.Security.Cryptography.X509Certificates.X509Certificate2 -> System.ServiceModel.EndpointIdentity
Public Shared Function CreateRsaIdentity (certificate As X509Certificate2) As EndpointIdentity
Parameter
- certificate
- X509Certificate2
Ein X509Certificate2-Objekt, das das Zertifikat für die RSA-Identität enthält.
Gibt zurück
Eine RSA-EndpointIdentity, die mit dem angegebenen certificate
verknüpft ist.
Ausnahmen
certificate
ist null
.
certificate
ist kein RSA-Zertifikat.
Beispiele
Der folgende Code zeigt eine Möglichkeit, wie diese Methode aufgerufen werden kann.
public static void CreateRSAIdentity()
{
// Create a ServiceHost for the CalculatorService type. Base Address is supplied in app.config.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService)))
{
// The base address is read from the app.config.
Uri dnsrelativeAddress = new Uri(serviceHost.BaseAddresses[0], "dnsidentity");
Uri certificaterelativeAddress = new Uri(serviceHost.BaseAddresses[0], "certificateidentity");
Uri rsarelativeAddress = new Uri(serviceHost.BaseAddresses[0], "rsaidentity");
// Set the service's X509Certificate to protect the messages.
serviceHost.Credentials.ServiceCertificate.SetCertificate(StoreLocation.LocalMachine,
StoreName.My,
X509FindType.FindBySubjectDistinguishedName,
"CN=identity.com, O=Contoso");
//Cache a reference to the server's certificate.
X509Certificate2 servercert = serviceHost.Credentials.ServiceCertificate.Certificate;
//Create endpoints for the service using a WSHttpBinding set for anonymous clients.
WSHttpBinding wsAnonbinding = new WSHttpBinding(SecurityMode.Message);
//Clients are anonymous to the service.
wsAnonbinding.Security.Message.ClientCredentialType = MessageCredentialType.None;
//Secure conversation (session) is turned off.
wsAnonbinding.Security.Message.EstablishSecurityContext = false;
//Create a service endpoint and change its identity to the DNS for an X509 Certificate.
ServiceEndpoint ep = serviceHost.AddServiceEndpoint(typeof(ICalculator),
wsAnonbinding,
String.Empty);
EndpointAddress epa = new EndpointAddress(dnsrelativeAddress, EndpointIdentity.CreateDnsIdentity("identity.com"));
ep.Address = epa;
//Create a service endpoint and change its identity to the X509 certificate's RSA key value.
ServiceEndpoint ep3 = serviceHost.AddServiceEndpoint(typeof(ICalculator), wsAnonbinding, String.Empty);
EndpointAddress epa3 = new EndpointAddress(rsarelativeAddress, EndpointIdentity.CreateRsaIdentity(servercert));
ep3.Address = epa3;
Hinweise
Ein sicherer WCF-Client, der eine Verbindung mit einem Endpunkt mit dieser Identität herstellt, überprüft, ob die vom Server präsentierten Ansprüche einen Anspruch enthalten, der den öffentlichen RSA-Schlüssel enthält, der aus dem Zertifikat abgerufen wird, das zum Erstellen dieser Identität verwendet wird.
Diese statische Methode erstellt eine Instanz von RsaEndpointIdentity, indem sie ihren Konstruktor RsaEndpointIdentity aufruft.
Gilt für
CreateRsaIdentity(String)
Erstellt eine RSA-Identität mit dem angegebenen öffentlichen Schlüssel.
public:
static System::ServiceModel::EndpointIdentity ^ CreateRsaIdentity(System::String ^ publicKey);
public static System.ServiceModel.EndpointIdentity CreateRsaIdentity (string publicKey);
static member CreateRsaIdentity : string -> System.ServiceModel.EndpointIdentity
Public Shared Function CreateRsaIdentity (publicKey As String) As EndpointIdentity
Parameter
- publicKey
- String
Der öffentliche Schlüssel für die RSA-Identität.
Gibt zurück
Eine RSA-EndpointIdentity, die mit dem angegebenen publicKey
verknüpft ist.
Ausnahmen
publicKey
ist null
.
Hinweise
Ein sicherer WCF-Client, der mit dieser Identität eine Verbindung zu einem Endpunkt herstellt, stellt sicher, dass die vom Server bereitgestellten Ansprüche einen Anspruch beinhalten, der den zum Erstellen dieser Identität verwendeten öffentlichen RSA-Schlüssel enthält.
Diese statische Methode erstellt eine Instanz von RsaEndpointIdentity, indem sie ihren Konstruktor RsaEndpointIdentity aufruft.