Aracılığıyla paylaş


EndpointIdentity.CreateX509CertificateIdentity Yöntem

Tanım

X509Certificate kimliği oluşturur.

Aşırı Yüklemeler

CreateX509CertificateIdentity(X509Certificate2)

Belirtilen sertifikayla bir X509Certificate kimliği oluşturur.

CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection)

Belirtilen birincil ve destekleyici sertifikalarla bir X509Certificate kimliği oluşturur.

Açıklamalar

Destekleyici sertifikalarınız olup olmadığına bağlı olarak bu iki oluşturucu arasında seçim yapın.

Bu kimlikle bir uç noktaya bağlanan güvenli bir WCF istemcisi, sunucu tarafından sunulan taleplerin, bu kimliği oluşturmak için kullanılan sertifikanın parmak izini içeren talebi içerdiğini doğrular.

CreateX509CertificateIdentity(X509Certificate2)

Belirtilen sertifikayla bir X509Certificate kimliği oluşturur.

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

Parametreler

certificate
X509Certificate2

X509Certificate2 Kimliğin sertifikasını içeren.

Döndürülenler

EndpointIdentity

Belirtilen certificateile ilişkilendirilmiş bir X509CertificateEndpointIdentity.

Özel durumlar

certificate, null değeridir.

Örnekler

Aşağıdaki kodda bu yöntemin nasıl çağrılacakları gösterilmektedir.

    // 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;
    }
}

Açıklamalar

Bu kimlikle bir uç noktaya bağlanan güvenli bir WCF istemcisi, sunucu tarafından sunulan taleplerin, bu kimliği oluşturmak için kullanılan sertifikanın parmak izini içeren talebi içerdiğini doğrular.

Bu static yöntem, X509CertificateEndpointIdentitygiriş parametresi olarak kullanarak certificate oluşturucusunu çağırarak bir örneği X509CertificateEndpointIdentity oluşturur.

Şunlara uygulanır

CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection)

Belirtilen birincil ve destekleyici sertifikalarla bir X509Certificate kimliği oluşturur.

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

Parametreler

primaryCertificate
X509Certificate2

X509Certificate2 Kimliğin birincil sertifikasını içeren.

supportingCertificates
X509Certificate2Collection

X509Certificate2Collection Kimliğin destekleyici sertifikalarını içeren.

Döndürülenler

EndpointIdentity

Bu kimlikle bir uç noktaya bağlanan güvenli bir WCF istemcisi, sunucu tarafından sunulan taleplerin, bu kimliği oluşturmak için kullanılan sertifikanın parmak izini içeren talebi içerdiğini doğrular.

Belirtilen primaryCertificate ve supportingCertificatesile ilişkilendirilmiş bir X509CertificateEndpointIdentity.

Özel durumlar

primaryCertificate veya supportingCertificates şeklindedir null.

Açıklamalar

Bu statik yöntem, X509CertificateEndpointIdentitygiriş parametreleri olarak ve supportingCertificates kullanarak primaryCertificate oluşturucusunu çağırarak öğesinin bir örneğini X509CertificateEndpointIdentity oluşturur.

Şunlara uygulanır