如何解决Flutter / Dart语言中的客户端证书身份验证
飞镖HttpClient
可以取一个SecurityContext
。
若要添加自定义的受信任证书颁发机构,或向 请求证书的服务器发送客户端证书 , 请将 SecurityContext对象作为可选
context
参数传递给HttpClient构造函数。可以在SecurityContext对象上设置所需的安全选项。
将您的PKCS12客户端密钥库(pfx文件)存储在应用程序中的某处(可能作为资产),并在启动时加载它。创建一个SecurityContext
,然后调用两者useCertificateChainBytes
,usePrivateKeyBytes
并将相同的值传递给两者(pfx文件的内容和密码)。
使用它SecurityContext
作为context
您的HttpClient
。
解决方法
我在证书世界中还很陌生。我决定创建一个应用程序,该应用程序必须使用证书来访问API。
我创建了一个自签名的CA证书,SSL证书和一个客户端证书。我将它们导入Windows
Server并正确配置了IIS。我可以通过clientcertificate.pfx文件向浏览器(Google
Chrome)发出请求。pfx证书通过MMC导入到个人用户存储中。为了创建pfx文件,我使用了.cert和.pvk文件。
到目前为止,一切都很好。
现在,我试图从dart发出请求,但不知道应该将哪些文件发送到API。我应该发送pfx文件吗?还是.cert和.pvk文件?你们有做过吗?有人可以帮助我了解一下此过程吗?我已经阅读了很多网站,但仍然找不到答案。在移动开发世界中,我也是全新的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。