如何在 .NET 或 JavaScript 中使用 MS-XCEP 和 MS-WSTEP 从 AD CS 获取证书?
Posted
技术标签:
【中文标题】如何在 .NET 或 JavaScript 中使用 MS-XCEP 和 MS-WSTEP 从 AD CS 获取证书?【英文标题】:How do I use MS-XCEP and MS-WSTEP in .NET or JavaScript to get a certificate from AD CS? 【发布时间】:2015-05-01 10:06:18 【问题描述】:Active Directory 证书服务提供了一个web service,它实现了MS-XCEP 和MS-WSTEP,供未连接域的计算机提交证书请求。
此证书可用于数字签名、加密等。
是否有可以用来与这些 Web 服务交互的 WSDL?我应该如何在 C# 或 javascript 中与它们交互?
【问题讨论】:
您引用的每个协议规范([MS-XCEP] 和 [MS-WSTEP])都有带有完整 WSDL 的附件:msdn.microsoft.com/en-us/library/dd304853.aspx 和 msdn.microsoft.com/en-us/library/dd357987.aspx。这还不够吗? 虽然 WSDL 由 @Crypt32 提供,但从逻辑上讲,您需要: 1. 创建 PKCS10 CSR 2. 将其打包为 PKCS7,将其加密为 RA 证书的地址 3. 使用 web 服务提交包 4. 检索并验证结果 【参考方案1】:WCF 为各种 Web 服务连接提供配置选项。根据过去的经验,我需要来自我正在连接的客户端的 WSDL——这会生成函数调用存根。然后我不得不通过 web.config “描述”通信机制。在运行时,WCF 会自动为您生成信封。
使用 WCF 的消息跟踪,您将能够看到信封 - 这将允许您验证消息结构是否接近 MS 文档中提供的示例。您可能必须“注入”到信封构造过程中以提供自定义属性,但如果这是标准 AD 实现,则不需要这些修改。
如果之后您仍然无法从连接中收到有意义的输出,请联系 AD 管理员团队,因为他们可能知道已成功连接的客户和/或您收到的模糊错误消息的含义。
不了解 Javascript,我认为手动构造信封并处理返回的输出需要大量工作 - MS 已经为所需的复杂数据结构提供了丰富的支持。
【讨论】:
【参考方案2】:Active Directory 证书服务为未连接域的计算机提供实施 MS-XCEP 和 MS-WSTEP 以提交证书请求的 Web 服务。
此证书可用于数字签名、加密等。
【讨论】:
以上是关于如何在 .NET 或 JavaScript 中使用 MS-XCEP 和 MS-WSTEP 从 AD CS 获取证书?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 javascript 将图像保存在文件夹中? ASP.NET
asp.net c#.net jquery / javascript 如何使用复选框启用或禁用 requiredfieldvalidator
Asp.net Core-在使用 javascript 或 C# 上传之前选择和验证 excel 文件?