EndpointIdentity.CreateX509CertificateIdentity メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
X509Certificate ID を作成します。
オーバーロード
CreateX509CertificateIdentity(X509Certificate2) |
指定した証明書を持つ X509Certificate ID を作成します。 |
CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection) |
指定したプライマリ証明書とサポート証明書を持つ X509Certificate ID を作成します。 |
注釈
証明書をサポートしているかどうかに基づいて、2 つのコンストラクターのいずれかを選択します。
この ID を持つエンドポイントに接続する、セキュリティで保護された WCF クライアントは、サーバーによって提示されるクレームに、この ID を構築するために使用された証明書のサムプリントを含むクレームが含まれていることを検証します。
CreateX509CertificateIdentity(X509Certificate2)
指定した証明書を持つ X509Certificate ID を作成します。
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
パラメーター
- certificate
- X509Certificate2
ID 用の証明書を含む X509Certificate2。
戻り値
指定した EndpointIdentity に関連付けられた X509Certificate certificate
。
例外
certificate
が null
です。
例
このメソッドを呼び出す方法を次のコードに示します。
// 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;
}
}
注釈
この ID を持つエンドポイントに接続する、セキュリティで保護された WCF クライアントは、サーバーによって提示されるクレームに、この ID を構築するために使用された証明書のサムプリントを含むクレームが含まれていることを検証します。
この static
メソッドは、コンストラクター X509CertificateEndpointIdentity を呼び出し、X509CertificateEndpointIdentity を入力パラメーターとして使用することで、certificate
のインスタンスを作成します。
適用対象
CreateX509CertificateIdentity(X509Certificate2, X509Certificate2Collection)
指定したプライマリ証明書とサポート証明書を持つ X509Certificate ID を作成します。
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
パラメーター
- primaryCertificate
- X509Certificate2
ID 用のプライマリ証明書を含む X509Certificate2。
- supportingCertificates
- X509Certificate2Collection
ID 用のサポート証明書を含む X509Certificate2Collection。
戻り値
この ID を持つエンドポイントに接続する、セキュリティで保護された WCF クライアントは、サーバーによって提示されるクレームに、この ID を構築するために使用された証明書のサムプリントを含むクレームが含まれていることを検証します。
指定した primaryCertificate
X509Certificate に関連付けられた X509Certificate EndpointIdentity と supportingCertificates
.
例外
primaryCertificate
または supportingCertificates
が null
です。
注釈
この静的メソッドは、コンストラクター X509CertificateEndpointIdentity を呼び出し、X509CertificateEndpointIdentity と primaryCertificate
を入力パラメーターとして使用することで、supportingCertificates
のインスタンスを作成します。