EndpointIdentity.CreateX509CertificateIdentity Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří identitu X509Certificate.
Přetížení
CreateX509CertificateIdentity(X509Certificate2) |
Vytvoří identitu X509Certificate se zadaným certifikátem. |
CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection) |
Vytvoří identitu X509Certificate se zadanými primárními a podpůrnými certifikáty. |
Poznámky
Vyberte si mezi těmito dvěma konstruktory na základě toho, jestli máte podpůrné certifikáty.
Zabezpečený klient WCF, který se připojuje ke koncovému bodu s touto identitou, ověřuje, že deklarace identity předložené serverem obsahují deklaraci identity, která obsahuje kryptografický otisk certifikátu použitého k vytvoření této identity.
CreateX509CertificateIdentity(X509Certificate2)
Vytvoří identitu X509Certificate se zadaným certifikátem.
public:
static System::ServiceModel::EndpointIdentity ^ CreateX509CertificateIdentity(System::Security::Cryptography::X509Certificates::X509Certificate2 ^ certificate);
public static System.ServiceModel.EndpointIdentity CreateX509CertificateIdentity (System.Security.Cryptography.X509Certificates.X509Certificate2 certificate);
static member CreateX509CertificateIdentity : System.Security.Cryptography.X509Certificates.X509Certificate2 -> System.ServiceModel.EndpointIdentity
Public Shared Function CreateX509CertificateIdentity (certificate As X509Certificate2) As EndpointIdentity
Parametry
- certificate
- X509Certificate2
Certifikát X509Certificate2 pro identitu.
Návraty
X509Certificate EndpointIdentity přidružené k zadané certificate
.
Výjimky
certificate
je null
.
Příklady
Následující kód ukazuje, jak tuto metodu volat.
// This method creates a WSFederationHttpBinding.
public static WSFederationHttpBinding CreateWSFederationHttpBinding()
{
// Create an instance of the WSFederationHttpBinding.
WSFederationHttpBinding b = new WSFederationHttpBinding();
// Set the security mode to Message.
b.Security.Mode = WSFederationHttpSecurityMode.Message;
// Set the Algorithm Suite to Basic256Rsa15.
b.Security.Message.AlgorithmSuite = SecurityAlgorithmSuite.Basic256Rsa15;
// Set NegotiateServiceCredential to true.
b.Security.Message.NegotiateServiceCredential = true;
// Set IssuedKeyType to Symmetric.
b.Security.Message.IssuedKeyType = SecurityKeyType.SymmetricKey;
// Set IssuedTokenType to SAML 1.1.
b.Security.Message.IssuedTokenType = "http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#samlv1.1";
// Extract the STS certificate from the certificate store.
X509Store store = new X509Store(StoreName.TrustedPeople, StoreLocation.CurrentUser);
store.Open(OpenFlags.ReadOnly);
X509Certificate2Collection certs = store.Certificates.Find(X509FindType.FindByThumbprint, "cd 54 88 85 0d 63 db ac 92 59 05 af ce b8 b1 de c3 67 9e 3f", false);
store.Close();
// Create an EndpointIdentity from the STS certificate.
EndpointIdentity identity = EndpointIdentity.CreateX509CertificateIdentity(certs[0]);
// Set the IssuerAddress using the address of the STS and the previously created EndpointIdentity.
b.Security.Message.IssuerAddress = new EndpointAddress(new Uri("http://localhost:8000/sts/x509"), identity);
// Set the IssuerBinding to a WSHttpBinding loaded from config
b.Security.Message.IssuerBinding = new WSHttpBinding("Issuer");
// Set the IssuerMetadataAddress using the metadata address of the STS and the previously created EndpointIdentity.
b.Security.Message.IssuerMetadataAddress = new EndpointAddress(new Uri("http://localhost:8001/sts/mex"), identity);
// Create a ClaimTypeRequirement.
ClaimTypeRequirement ctr = new ClaimTypeRequirement("http://example.org/claim/c1", false);
// Add the ClaimTypeRequirement to ClaimTypeRequirements.
b.Security.Message.ClaimTypeRequirements.Add(ctr);
// Return the created binding.
return b;
}
}
Poznámky
Zabezpečený klient WCF, který se připojuje ke koncovému bodu s touto identitou, ověřuje, že deklarace identity předložené serverem obsahují deklaraci identity, která obsahuje kryptografický otisk certifikátu použitého k vytvoření této identity.
Tato static
metoda vytvoří instanci X509CertificateEndpointIdentity voláním jeho konstruktoru , X509CertificateEndpointIdentitypomocí certificate
jako vstupní parametr.
Platí pro
CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection)
Vytvoří identitu X509Certificate se zadanými primárními a podpůrnými certifikáty.
public:
static System::ServiceModel::EndpointIdentity ^ CreateX509CertificateIdentity(System::Security::Cryptography::X509Certificates::X509Certificate2 ^ primaryCertificate, System::Security::Cryptography::X509Certificates::X509Certificate2Collection ^ supportingCertificates);
public static System.ServiceModel.EndpointIdentity CreateX509CertificateIdentity (System.Security.Cryptography.X509Certificates.X509Certificate2 primaryCertificate, System.Security.Cryptography.X509Certificates.X509Certificate2Collection supportingCertificates);
static member CreateX509CertificateIdentity : System.Security.Cryptography.X509Certificates.X509Certificate2 * System.Security.Cryptography.X509Certificates.X509Certificate2Collection -> System.ServiceModel.EndpointIdentity
Public Shared Function CreateX509CertificateIdentity (primaryCertificate As X509Certificate2, supportingCertificates As X509Certificate2Collection) As EndpointIdentity
Parametry
- primaryCertificate
- X509Certificate2
Obsahuje X509Certificate2 primární certifikát pro identitu.
- supportingCertificates
- X509Certificate2Collection
Obsahuje X509Certificate2Collection podpůrné certifikáty pro identitu.
Návraty
Zabezpečený klient WCF, který se připojuje ke koncovému bodu s touto identitou, ověřuje, že deklarace identity předložené serverem obsahují deklaraci identity, která obsahuje kryptografický otisk certifikátu použitého k vytvoření této identity.
X509Certificate EndpointIdentity přidružené k zadané primaryCertificate
a supportingCertificates
.
Výjimky
primaryCertificate
nebo supportingCertificates
je null
.
Poznámky
Tato statická metoda vytvoří instanci X509CertificateEndpointIdentity voláním jeho konstruktoru , X509CertificateEndpointIdentitypomocí primaryCertificate
a supportingCertificates
jako vstupní parametry.