Compartir a través de


EndpointIdentity.CreateX509CertificateIdentity Método

Definición

Crea una identidad de X509Certificate.

Sobrecargas

CreateX509CertificateIdentity(X509Certificate2)

Crea una identidad X509Certificate con el certificado especificado.

CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection)

Crea una identidad de X509Certificate con los certificados primario y de apoyo especificados.

Comentarios

Elija entre estos dos constructores en función de si tiene certificados de apoyo.

Cliente WCF seguro que se conecta a un punto de conexión con esta identidad y comprueba que las notificaciones presentadas por el servidor contengan la notificación con la huella digital del certificado utilizado para construir esta identidad.

CreateX509CertificateIdentity(X509Certificate2)

Crea una identidad X509Certificate con el certificado especificado.

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

Parámetros

certificate
X509Certificate2

X509Certificate2 que contiene el certificado para la identidad.

Devoluciones

EndpointIdentity

X509Certificate EndpointIdentity asociado al certificate especificado.

Excepciones

certificate es null.

Ejemplos

El siguiente código muestra cómo llamar a este método.

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

Comentarios

Cliente WCF seguro que se conecta a un punto de conexión con esta identidad y comprueba que las notificaciones presentadas por el servidor contengan la notificación con la huella digital del certificado utilizado para construir esta identidad.

Este método static crea una instancia de X509CertificateEndpointIdentity llamando a su constructor, X509CertificateEndpointIdentity, utilizando certificate como parámetro de entrada.

Se aplica a

CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection)

Crea una identidad de X509Certificate con los certificados primario y de apoyo especificados.

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

Parámetros

primaryCertificate
X509Certificate2

X509Certificate2 que contiene el certificado primario para la identidad.

supportingCertificates
X509Certificate2Collection

X509Certificate2Collection que contiene los certificados de apoyo para la identidad.

Devoluciones

EndpointIdentity

Cliente WCF seguro que se conecta a un punto de conexión con esta identidad y comprueba que las notificaciones presentadas por el servidor contengan la notificación con la huella digital del certificado utilizado para construir esta identidad.

X509Certificate EndpointIdentity asociado al especificado primaryCertificate y supportingCertificates.

Excepciones

primaryCertificate o supportingCertificates es null.

Comentarios

Este método estático crea una instancia de X509CertificateEndpointIdentity llamando a su constructor, X509CertificateEndpointIdentity, utilizando primaryCertificate y supportingCertificates como parámetros de entrada.

Se aplica a