X509CertificateRecipientServiceCredential.SetCertificate Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Hizmeti temsil etmek için kullanılacak sertifikayı belirtir.
Aşırı Yüklemeler
SetCertificate(String) |
Konu ayırt edici adını belirterek hizmeti temsil etmek için kullanılacak sertifikayı belirtir. |
SetCertificate(String, StoreLocation, StoreName) |
Konu ayırt edici adını, sertifika deposu adını ve depo konumunu belirterek hizmeti temsil etmek için kullanılacak sertifikayı belirtir. |
SetCertificate(StoreLocation, StoreName, X509FindType, Object) |
, |
SetCertificate(String)
Konu ayırt edici adını belirterek hizmeti temsil etmek için kullanılacak sertifikayı belirtir.
public:
void SetCertificate(System::String ^ subjectName);
public void SetCertificate (string subjectName);
member this.SetCertificate : string -> unit
Public Sub SetCertificate (subjectName As String)
Parametreler
- subjectName
- String
Konu ayırt edici adı.
Örnekler
Aşağıdaki kod, konu adından bir hizmet kimlik bilgisi için sertifika ayarlamak için bu yöntemin nasıl kullanılacağını gösterir.
NetTcpBinding b = new NetTcpBinding();
b.Security.Mode = SecurityMode.Message;
Type c = typeof(ICalculator);
Uri a = new Uri("net.tcp://MyMachineName/tcpBase");
Uri[] baseAddresses = new Uri[] { a };
ServiceHost sh = new ServiceHost(typeof(MyService), baseAddresses);
sh.AddServiceEndpoint(c, b, "Aloha");
sh.Credentials.ServiceCertificate.SetCertificate(
"CN=Administrator,CN=Users,DC=johndoe,DC=nttest,DC=microsoft,DC=com");
sh.Open();
Dim b As New NetTcpBinding()
b.Security.Mode = SecurityMode.Message
Dim c As Type = GetType(ICalculator)
Dim a As New Uri("net.tcp://MyMachineName/tcpBase")
Dim baseAddresses() As Uri = { a }
Dim sh As New ServiceHost(GetType(MyService), baseAddresses)
sh.AddServiceEndpoint(c, b, "Aloha")
sh.Credentials.ServiceCertificate.SetCertificate("CN=Administrator,CN=Users,DC=johndoe,DC=nttest,DC=microsoft,DC=com")
sh.Open()
Açıklamalar
parametresi hakkında subjectName
daha fazla bilgi için bkz SubjectName. .
Şunlara uygulanır
SetCertificate(String, StoreLocation, StoreName)
Konu ayırt edici adını, sertifika deposu adını ve depo konumunu belirterek hizmeti temsil etmek için kullanılacak sertifikayı belirtir.
public:
void SetCertificate(System::String ^ subjectName, System::Security::Cryptography::X509Certificates::StoreLocation storeLocation, System::Security::Cryptography::X509Certificates::StoreName storeName);
public void SetCertificate (string subjectName, System.Security.Cryptography.X509Certificates.StoreLocation storeLocation, System.Security.Cryptography.X509Certificates.StoreName storeName);
member this.SetCertificate : string * System.Security.Cryptography.X509Certificates.StoreLocation * System.Security.Cryptography.X509Certificates.StoreName -> unit
Public Sub SetCertificate (subjectName As String, storeLocation As StoreLocation, storeName As StoreName)
Parametreler
- subjectName
- String
Konu ayırt edici adı.
- storeLocation
- StoreLocation
Hizmetin hizmet sertifikasını almak için kullandığı sertifika deposunun konumu.
- storeName
- StoreName
Açılacak X.509 sertifika deposunun adını belirtir.
Örnekler
Aşağıdaki kod, hizmet kimlik bilgileri için sertifika ayarlamak üzere bu yöntemin nasıl kullanılacağını gösterir.
NetTcpBinding b = new NetTcpBinding();
b.Security.Mode = SecurityMode.Message;
Type c = typeof(ICalculator);
Uri a = new Uri("net.tcp://MyMachineName/tcpBase");
Uri[] baseAddresses = new Uri[] { a };
ServiceHost sh = new ServiceHost(typeof(MyService), baseAddresses);
sh.AddServiceEndpoint(c, b, "Aloha");
sh.Credentials.ServiceCertificate.SetCertificate(
"CN=Administrator,CN=Users,DC=johndoe,DC=nttest,DC=microsoft,DC=com",
StoreLocation.LocalMachine,
StoreName.My);
sh.Open();
Dim b As New NetTcpBinding()
b.Security.Mode = SecurityMode.Message
Dim c As Type = GetType(ICalculator)
Dim a As New Uri("net.tcp://MyMachineName/tcpBase")
Dim baseAddresses() As Uri = { a }
Dim sh As New ServiceHost(GetType(MyService), baseAddresses)
sh.AddServiceEndpoint(c, b, "Aloha")
sh.Credentials.ServiceCertificate.SetCertificate("CN=Administrator,CN=Users,DC=johndoe,DC=nttest,DC=microsoft,DC=com", StoreLocation.LocalMachine, StoreName.My)
sh.Open()
Açıklamalar
parametresi hakkında subjectName
daha fazla bilgi için bkz SubjectName. .
değerleri storeLocation
numaralandırmaya StoreLocation eklenir:
LocalMachine: yerel makineye atanan sertifika deposu (varsayılan).
CurrentUser: geçerli kullanıcı tarafından kullanılan sertifika deposu.
İstemci uygulaması bir sistem hesabı altında çalışıyorsa, sertifika genellikle içindedir LocalMachine. İstemci uygulaması bir kullanıcı hesabı altında çalışıyorsa, sertifika genellikle içindedir CurrentUser.
değerleri storeName
numaralandırmaya StoreName eklenir.
Şunlara uygulanır
SetCertificate(StoreLocation, StoreName, X509FindType, Object)
, storeName
findType
ve findValue
gibi storeLocation
sorgu parametrelerini belirterek hizmeti temsil etmek için kullanılacak sertifikayı belirtir.
public:
void SetCertificate(System::Security::Cryptography::X509Certificates::StoreLocation storeLocation, System::Security::Cryptography::X509Certificates::StoreName storeName, System::Security::Cryptography::X509Certificates::X509FindType findType, System::Object ^ findValue);
public void SetCertificate (System.Security.Cryptography.X509Certificates.StoreLocation storeLocation, System.Security.Cryptography.X509Certificates.StoreName storeName, System.Security.Cryptography.X509Certificates.X509FindType findType, object findValue);
member this.SetCertificate : System.Security.Cryptography.X509Certificates.StoreLocation * System.Security.Cryptography.X509Certificates.StoreName * System.Security.Cryptography.X509Certificates.X509FindType * obj -> unit
Public Sub SetCertificate (storeLocation As StoreLocation, storeName As StoreName, findType As X509FindType, findValue As Object)
Parametreler
- storeLocation
- StoreLocation
İstemcinin istemci sertifikasını almak için kullandığı sertifika deposunun konumu.
- storeName
- StoreName
Açılacak X.509 sertifika deposunun adını belirtir.
- findType
- X509FindType
Yürütülecek X.509 aramasının türünü tanımlar.
- findValue
- Object
X.509 sertifika deposunda aranacak değer.
Örnekler
Aşağıdaki kod, hizmet kimlik bilgileri için sertifika ayarlamak üzere bu yöntemin nasıl kullanılacağını gösterir.
NetTcpBinding b = new NetTcpBinding();
b.Security.Mode = SecurityMode.Message;
Type c = typeof(ICalculator);
Uri a = new Uri("net.tcp://MyMachineName/tcpBase");
Uri[] baseAddresses = new Uri[] { a };
ServiceHost sh = new ServiceHost(typeof(MyService), baseAddresses);
sh.AddServiceEndpoint(c, b, "Aloha");
sh.Credentials.ServiceCertificate.SetCertificate(
StoreLocation.LocalMachine,
StoreName.My,
X509FindType.FindByThumbprint,
"af1f50b20cd413ed9cd00c315bbb6dc1c08da5e6");
sh.Open();
Dim b As New NetTcpBinding()
b.Security.Mode = SecurityMode.Message
Dim c As Type = GetType(ICalculator)
Dim a As New Uri("net.tcp://MyMachineName/tcpBase")
Dim baseAddresses() As Uri = { a }
Dim sh As New ServiceHost(GetType(MyService), baseAddresses)
sh.AddServiceEndpoint(c, b, "Aloha")
sh.Credentials.ServiceCertificate.SetCertificate(StoreLocation.LocalMachine, StoreName.My, X509FindType.FindByThumbprint, "af1f50b20cd413ed9cd00c315bbb6dc1c08da5e6")
sh.Open()
Açıklamalar
değerleri storeLocation
numaralandırmaya StoreLocation eklenir:
LocalMachine: yerel makineye atanan sertifika deposu (varsayılan).
CurrentUser: geçerli kullanıcı tarafından kullanılan sertifika deposu.
İstemci uygulaması bir sistem hesabı altında çalışıyorsa, sertifika genellikle içindedir LocalMachine. İstemci uygulaması bir kullanıcı hesabı altında çalışıyorsa, sertifika genellikle içindedir CurrentUser.
değerleri storeName
numaralandırmaya StoreName eklenir.
değerleri findType
numaralandırmaya X509FindType eklenir.
En sık kullanılan numaralandırma, belirtilen depodaki sertifikaların konu adı üzerinde büyük/küçük harfe duyarlı olmayan bir arama yapan numaralandırmadır FindBySubjectName. Bu, kesin olmayan bir arama olabilir. Birden fazla sertifika döndürülürse, istemciyi temsil etmek için bul ile eşleşen ilk sertifika kullanılır.