Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C FindBySubjectName函数_C#_Security_Find_Certificate_X509certificate - Fatal编程技术网

C# C FindBySubjectName函数

C# C FindBySubjectName函数,c#,security,find,certificate,x509certificate,C#,Security,Find,Certificate,X509certificate,为什么: foundCertificates = certificates.Find(X509FindType.FindBySubjectName, "TEXT 14", false); 查找与相同的证书 foundCertificates = certificates.Find(X509FindType.FindBySubjectName, "TEXT 141", false); 如果我指定我想要文本141,它不应该为我选择文本14 如何解决此问题?来自for X509FindType.F

为什么:

foundCertificates = certificates.Find(X509FindType.FindBySubjectName, "TEXT 14", false);
查找与相同的证书

foundCertificates = certificates.Find(X509FindType.FindBySubjectName, "TEXT 141", false);
如果我指定我想要文本141,它不应该为我选择文本14

如何解决此问题?

来自for X509FindType.FindBySubjectName枚举成员:

Find方法使用FindBySubjectName值,使用提供的值执行不区分大小写的字符串比较。例如,如果将MyCert传递给Find方法,它将查找主题名称包含该字符串的所有证书,而不考虑其他主题值。按可分辨名称搜索是更精确的搜索

因此,如果需要精确匹配,请改用X509FindType.FindBySubjectDifferentizedName。

来自for X509FindType.FindBySubjectName枚举成员:

Find方法使用FindBySubjectName值,使用提供的值执行不区分大小写的字符串比较。例如,如果将MyCert传递给Find方法,它将查找主题名称包含该字符串的所有证书,而不考虑其他主题值。按可分辨名称搜索是更精确的搜索


因此,如果需要精确匹配,请改用X509FindType.FindBySubjectDifferentizedName。

Tnx。但当我在FindBySubjectDiscrimitedName中搜索文本141时,它说找不到证书。在哪里可以看到证书的SubjectDifferentizedName?@StevenSeagull,打开证书详细信息->详细信息选项卡->主题字段。这是一个,明白了!X500 DifferentizedName name=certificate.SubjectName;Console.WriteLinename.Name;Tnx它现在可以在FindBySubjectDifferentizedName的情况下工作,如果您将自己的字符串文本输入Find方法,则需要在其前面加上CN=,在我的情况下,它无法找到任何证书。示例:FindX509FindType.findbysubjectdifferentiedname,CN=Example.org,….Tnx。但当我在FindBySubjectDiscrimitedName中搜索文本141时,它说找不到证书。在哪里可以看到证书的SubjectDifferentizedName?@StevenSeagull,打开证书详细信息->详细信息选项卡->主题字段。这是一个,明白了!X500 DifferentizedName name=certificate.SubjectName;Console.WriteLinename.Name;Tnx它现在可以在FindBySubjectDifferentizedName的情况下工作,如果您将自己的字符串文本输入Find方法,则需要在其前面加上CN=,在我的情况下,它无法找到任何证书。示例:FindX509FindType.findbysubjectdifferentiedname,CN=Example.org。。。。