2013-11-27 86 views
2

我正在编写GAE java中的应用程序,通过它的证书对用户进行身份验证。我在客户端使用keytool创建了一个自签名证书。我也为我的应用程序启用了谷歌应用程序引擎中的https请求。应用程序的流程非常简单。用户使用任何浏览器进入应用程序主页,然后尝试访问应用程序资源。我只是验证用户是否有有效的证书。我错过了当用户通过任何浏览器访问我的应用程序时,如何将我在客户端创建的证书发送到应用程序的部分?另外我如何验证证书?在此先感谢GAE中凭证的客户端认证java

回答

0

我做了很多搜索,来到这些点,并在这里分享。

1-在这种情况下,当我浏览器连接到服务器,发送客户端证书是浏览器的责任。客户端证书应该在浏览器中进行配置/安装/导入。如果您正在开发客户端,那么您可以编码从本地计算机读取证书并将其嵌入到请求中,然后将其发送到服务器。

2-浏览器只在服务器请求服务器时向服务器发送证书,服务器已将其证书发送给浏览器,并且该证书已由浏览器验证。我们必须首先配置我们的服务器来发送证书给客户端,并且还要求客户端证书。我们可以在我们的应用程序中验证客户端证书。我们只需要从请求中提取证书。目前GAE不提供客户证书服务。我们无法配置我们的GAE服务器来请求客户端证书。可能会有另一种方式来做到这一点,但我没有找到任何解决方案。我希望将来GAE将支持客户端证书认证。