我在使用Spring Social进行身份验证时遇到了一些问题。
到目前为止,我可以在我的服务器上的http://localhost:8080/signin
上打开一个表单,点击指向auth/linkedin
的链接重定向到https://www.linkedin.com/uas/oauth2/authorization?...
,在允许访问后,重定向回{ {1}}。此时,我的服务器POST到http://localhost:8080/auth/linkedin?...
,但失败了:
https://www.linkedin.com/uas/oauth2/accessToken
在证书方面我远不是专家。据我所知,Linkedins证书被拒绝。为了使它被接受,Linkedins证书或颁发它的证书颁发机构的证书必须在我的信任库中。
错误表明我没有。因此,一种解决方案似乎只是将证书颁发机构的证书导入信任库。
这似乎是不好的做法。我假设我正在与linkedin谈话,但是信任链的重点不是假设,而是要证明有人识别,并且在这种情况下并没有发生。如果我只是假设有人,如果他们说他们是谁,证书就会失去价值。
此外,我似乎不应该首先得到这个错误。我还没有发现其他人遇到与Linkedin有关的问题,我发现很难相信他们不会使用公认的证书颁发机构。那么问题的根本原因是什么呢?
答案 0 :(得分:0)
事实证明,在我忘记的早期开发阶段,我为一些自签名证书创建了一个新的密钥库,设置为" -Djavax.net.ssl.trustStore = ...&# 34 ;.此替换了默认的cacerts密钥库。现在,我已经将我的证书导入了cacerts。