好吧,我是Spring Boot Security的新手,我有一个问题。我有简单的设置在服务器上启用https,如下所示:
server:
port: 8443
ssl:
key-store-type: PKCS12
key-store: classpath: keystore.p12
key-store-password: mypass
key-alias: testkey
到目前为止一切顺利。问题是访问该服务器端点的客户端(例如,简单的卷曲)会收到证书验证失败。根据我的内容,https通信是通过TSL(或SSL)进行的,它要求用户验证服务器颁发的证书以启用安全通道。
我不希望所有客户端都携带证书来访问端点,因为它是我正在开发的Rest API。
启用https但不需要证书的一些api网址:
为了保持加密,我应该遵循哪种方式,即保留 https ,但也不需要客户端证书验证?
PS:通过浏览器,我可以访问我的服务并获得答案,但是java客户端,python或curl不起作用。
编辑
我不想让客户端选择使请求不安全,我想保留https但不要求客户端随身携带证书。也许我甚至不能这样做,所以我问,因为我绝对是一个初学者。如果没有办法,我等待那个方向的答案,如果可能的话更完整
答案 0 :(得分:0)
这取决于每个客户。例如,您可以通过忽略浏览器中的安全警告来执行此操作。对于curl,使用-k
或--insecure
进行wget使用--no-check-certificate
,您将不得不研究如何在您使用的任何客户端中忽略ssl。没有办法从服务器控制这一点,因为这会破坏SSL / TLS的整个目的。