如何获取客户端证书信息 在Unix下Apache中配置SSL完成,客户端提交客户证书后,服务器端如何获取提交证书的相关信息?如证书的有效期、微缩图等?由于是在Unix下,所以用不了微软的CAPICOM控件,求教~~! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 php 中应该有专门接收证书信息的控件吧 PHP Variables_SERVER["SSL_CLIENT_S_DN"] /C=CN/ST=JS/L=NJ/O=Test co,ltd./CN=Test co,ltd./[email protected] _SERVER["SSL_CLIENT_V_START"] May 29 05:50:14 2007 GMT _SERVER["SSL_CLIENT_V_END"] May 28 05:50:14 2008 GMT 你写一个<%phpinfo()%>就可以看到了 把以下这些信息换成PHP的写法就可以了Request.ServerVariables('Https_Secretkeysize')服务器验证私人关键字的位数如1024Request.ServerVariables('Https_Server_Issuer')服务器证书的发行者字段Request.ServerVariables('Https_Server_Subject')服务器证书的主题字段Request.ServerVariables('Auth_Password')当使用基本验证模式时,客户在密码对话框中输入的密码Request.ServerVariables('Auth_Type')是用户访问受保护的脚本时,服务器用於检验用户的验证方法Request.ServerVariables('Auth_User')代证的用户名Request.ServerVariables('Cert_Cookie')唯一的客户证书ID号Request.ServerVariables('Cert_Flag')客户证书标妼,如有客户端证书,则bit0为0如果客户端证书验证无效,bit1被设置为1Request.ServerVariables('Cert_Issuer')用户证书中的发行者字段Request.ServerVariables('Cert_Keysize')安全套接字层连接关键字的位数,如128Request.ServerVariables('Cert_Secretkeysize')服务器验证私人关键字的位数如1024Request.ServerVariables('Cert_Serialnumber')客户证书的序列号字段Request.ServerVariables('Cert_Server_Issuer')服务器证书的发行者字段Request.ServerVariables('Cert_Server_Subject')服务器证书的主题字段Request.ServerVariables('Cert_Subject')客户端证书的主题字段Request.ServerVariables('Content_Type')客户发送的formQg容或HTTPPUT的数据类型这里属性 <?php print_r($_SERVER); ?> 用这个查看 之前也试过echo $_SERVER["CLIENT_CERT"]."";echo $_SERVER["SSL_CLIENT_S_DN"];之类的属性,但是显示不出来,另外在别人的机器上phpinfo();后是可以看到_SERVER["CLIENT_CERT"]这类的这些属性的值位no value,可是在我本地的中phpinfo();后却没有这些属性的值了,不知是否php在用SSL时是否还需要进行什么配置?目前是我的Apache的双向SSL都已经配成功的了,可以提交证书访问test.php页面的。但_SERVER["CLIENT_CERT"]这类跟证书相关的参数属性值都取不到。 有什么地方设置可能导致呢?我已经是单单安装了下php5,什么没设置,运行test.php,但就是不见有_SERVER["CLIENT_CERT"]这些属性,是否php还要安装openssl?或者是Apache要做什么设置呢? 关注中,希望大虾出来解答。感觉PHP对于证书的支持不是很好 关注中,希望大虾出来解答。感觉PHP对于证书的支持不是很好 A呢 V呢 S呢 唠叨老大呢,出来讲讲啊,不会还在睡懒觉吧^_^ Apache的SSL.conf配置中要加上: SSLOptions +StdEnvVars然后你就可以在php中通过 $_SERVER['????']来获得大量与SSL有关的信息了,比如 $_SERVER['SSL_CLIENT_S_DN'] 一个正则问题 iframe嵌入页面的setcookie在ie6,7下失效 php+mysql问题 Class 'mysqli' not found的问题 如何解决无刷新验证用户是否存在? 正则里比较怪异的一个关于乱码的问题. PHP怎么判断一个类已经存在? 求一SQL语句写法 什么是工厂模式(factory)? Call to undefined function: mysql_connect() ,php5+IIS+mySql+win2000 echo base64_encode(sha1('test', TRUE));如何把他还原回来????? php中使用什么样的在线编辑器,如何使用?
_SERVER["SSL_CLIENT_V_START"] May 29 05:50:14 2007 GMT
_SERVER["SSL_CLIENT_V_END"] May 28 05:50:14 2008 GMT
你写一个
<%
phpinfo()
%>
就可以看到了
服务器验证私人关键字的位数如1024Request.ServerVariables('Https_Server_Issuer')
服务器证书的发行者字段Request.ServerVariables('Https_Server_Subject')
服务器证书的主题字段Request.ServerVariables('Auth_Password')
当使用基本验证模式时,客户在密码对话框中输入的密码Request.ServerVariables('Auth_Type')
是用户访问受保护的脚本时,服务器用於检验用户的验证方法Request.ServerVariables('Auth_User')
代证的用户名Request.ServerVariables('Cert_Cookie')
唯一的客户证书ID号Request.ServerVariables('Cert_Flag')
客户证书标妼,如有客户端证书,则bit0为0如果客户端证书验证无效,bit1被设置为1Request.ServerVariables('Cert_Issuer')
用户证书中的发行者字段Request.ServerVariables('Cert_Keysize')
安全套接字层连接关键字的位数,如128Request.ServerVariables('Cert_Secretkeysize')
服务器验证私人关键字的位数如1024Request.ServerVariables('Cert_Serialnumber')
客户证书的序列号字段Request.ServerVariables('Cert_Server_Issuer')
服务器证书的发行者字段Request.ServerVariables('Cert_Server_Subject')
服务器证书的主题字段Request.ServerVariables('Cert_Subject')
客户端证书的主题字段Request.ServerVariables('Content_Type')
客户发送的formQg容或HTTPPUT的数据类型
这里属性
print_r($_SERVER);
?>
用这个查看
echo $_SERVER["CLIENT_CERT"]."";
echo $_SERVER["SSL_CLIENT_S_DN"];
之类的属性,但是显示不出来,
另外在别人的机器上phpinfo();后是可以看到_SERVER["CLIENT_CERT"]这类的这些属性的值位no value,可是在我本地的中phpinfo();后却没有这些属性的值了,不知是否php在用SSL时是否还需要进行什么配置?
目前是我的Apache的双向SSL都已经配成功的了,可以提交证书访问test.php页面的。但_SERVER["CLIENT_CERT"]这类跟证书相关的参数属性值都取不到。