我在证书世界中还很陌生。我决定创建一个应用程序,该应用程序必须使用证书来访问API。
我创建了一个自签名的CA证书,SSL证书和一个客户端证书。我将它们导入Windows Server并正确配置了IIS。我可以通过clientcertificate.pfx文件向浏览器(Google Chrome)发出请求。pfx证书通过MMC导入到个人用户存储中。为了创建pfx文件,我使用了.cert和.pvk文件。
到目前为止,一切都很好。
现在,我试图从dart发出请求,但不知道应该将哪些文件发送到API。我应该发送pfx文件吗?还是.cert和.pvk文件?你们有做过吗?有人可以帮助我了解一下此过程吗?我已经阅读了很多网站,但仍然找不到答案。在移动开发世界中,我也是全新的。
飞镖HttpClient可以取一个SecurityContext。
HttpClient
SecurityContext
若要添加自定义的受信任证书颁发机构,或向 请求证书的服务器发送客户端证书 , 请将 SecurityContext对象作为可选context参数传递给HttpClient构造函数。可以在SecurityContext对象上设置所需的安全选项。
context
将您的PKCS12客户端密钥库(pfx文件)存储在应用程序中的某处(可能作为资产),并在启动时加载它。创建一个SecurityContext,然后调用两者useCertificateChainBytes,usePrivateKeyBytes并将相同的值传递给两者(pfx文件的内容和密码)。
useCertificateChainBytes
usePrivateKeyBytes
使用它SecurityContext作为context您的HttpClient。