我想使用RequireHttpsAttribute来防止不安全的HTTP请求被发送到一个操作方法。 C# [RequireHttps] //apply to all actions in controller public class SomeController { [RequireHttps] //apply to this action only public ActionResult SomeAction() { … } } VB <RequireHttps()> _ Public Class SomeController <RequireHttps()> _ Public Function SomeAction() As ActionResult … End Function End Class 不幸的是,ASP.NET开发服务器不支持HTTPS。 我如何使ASP.NET MVC应用程序在发布到生产环境时使用RequireHttps,但在ASP.NET开发服务器上的开发工作站上运行时不能使用RequireHttps?
我已经开始使用Apache 2.4和SSL的Windows Server。 当我连接到https://www.example.com并点击绿色锁,我有消息: 您的网站连接使用过时的密码encryption 有什么build议吗? 以下是ssl.conf : # # This is the Apache server configuration file providing SSL support. # It contains the configuration directives to instruct the server how to # serve pages over an https connection. For detailed information about these # directives see <URL:http://httpd.apache.org/docs/2.4/mod/mod_ssl.html> # # Do NOT simply read the […]
我正在通过SSL连接到我的数据库Google Cloud SQL。 我使用codeigniter 3.0来这样做,虽然mysqli驱动程序有点修改,以允许此function。 它已经运行好几个月了。 但是它刚刚开始返回这个警告: Message: mysqli::real_connect(): SSL operation failed with code 1. OpenSSL Error messages: error:14082174:SSL routines:SSL3_CHECK_CERT_AND_ALGORITHM:dh key too small 我假设DH Key is too small是主要问题,但我不知道这意味着什么。 我已经使用Diffie-Hellman密钥交换,以及“键太小”的消息,但我没有太多的运气。 这是否表示服务器上的密钥已被篡改? 我已经检查了最近修改的date – 没有exception的近期访问。 这可能是我的服务器做了一些升级到PHP或他们的服务器configuration,这可能会导致此打破,但我想检查,确保它不是别的。 感谢有关这个问题的任何见解/可读材料。
我一直在我的开发服务器上的问题,其中cURL,而完美的HTTP任何工作,与任何HTTPS无法正常工作 – 即使是完全相同的资源与不同的协议(用于testing我一直在要求google.com同时使用http和https)。 返回的cURL错误是35:“在SSL / TLS握手的某处发生了问题。 我已经梳理了networking和解决scheme,所有这些都设置CURLOPT_SSL_VERIFYPEER为false,这不会改变什么,或者下载证书文件并将CURLOPT_CAINFO设置为它的path,这也不会改变。 设置证书时,我按照本教程和本教程的说明尝试同时下载我请求的资源的证书并下载证书包。 我也试着明确地设置CURLOP_PORT为443.为了彻底的问题,我设置的其他选项是CURLOPT_VERBOSE = true,CURLOPT_RETURNTRANSFER = true,并且CURLOPT_SSL_VERIFYHOST = 2(我尝试了1和2的所有组合都是VERIFYPEER和假)。 我也已经在phpinfo()中确认我有OpenSSL并且已经启用了。 我使用了很多在我的最后一个生产服务器上完美工作的旧代码,所以这个代码已经工作过了。 但是,托pipe共享主机,我不知道大部分的configuration。
试图find一种方法来禁用Firefox提出警告,每次连接使用“不受信任”的证书,Selenium。 我相信那种最好的解决scheme是设置一个浏览器偏好。 非常感谢! 任何build议将不胜感激!
我正在编写一个Java应用程序,通过HTTPS连接到两个Web服务器。 一个通过默认信任链得到一个可信的证书,另一个使用自签名证书。 当然,连接到第一台服务器的工作,而使用自签名证书连接到服务器不工作,直到我用该服务器的证书创build一个信任存储。 但是,默认情况下,受信任服务器的连接不再起作用,因为显然默认的trustStore在创build自己的服务器时会被忽略。 我find的一个解决scheme是从默认的trustStore添加证书到我自己的。 但是,我不喜欢这个解决scheme,因为它需要我继续pipe理那个trustStore。 (我不能认为这些证书在可预见的将来会保持不变,对吗?) 除此之外,我发现两个5岁的线程有类似的问题: 在JVM中注册多个密钥库 我怎样才能有一个Java服务器的多个SSL证书 他们都深入到Java的SSL基础设施。 我希望现在有一个更方便的解决scheme,我可以很容易地解释我的代码的安全审查。
我正在使用证书和私钥 $ctx = stream_context_create(); stream_context_set_option($ctx, 'ssl', 'local_cert', $certfile); stream_context_set_option($ctx, 'ssl', 'passphrase', $pass); $fp = stream_socket_client('ssl://gateway.xyz.com:2195', $err, $errstr, 60, STREAM_CLIENT_CONNECT, $ctx); 它在我的本地XAMPP服务器上运行,但它不在外部服务器上工作: 警告:stream_socket_client()[function.stream-socket-client]:无法连接到/home/biranchi/public_html/push.php中的ssl://gateway.sandbox.push.apple.com:2195(连接超时)在线42 无法连接110 什么是错误? 我是否需要更改服务器中的某些设置?
SSLSocket.getEnabledProtocols()方法返回以下内容: [SSLv2Hello, SSLv3, TLSv1] 。 实际上,当我调用connect()并打开SSLdebugging时,我看到使用了一个v2客户端hello: main, WRITE: TLSv1 Handshake, length = 81 main, WRITE: SSLv2 client hello message, length = 110 但是我发现两个(不可否认的是旧的)引用说JSSE不支持SSL版本2: 从Java的基础networking : 'SSLv2Hello'是一个伪协议,允许Java用SSLv2'hello消息'发起握手。 这不会导致使用SSLv2协议,这完全不被Java支持。 从JSSE参考指南 : J2SDK 1.4和更高版本中的JSSE实现实现了SSL 3.0和TLS 1.0。 它没有实现SSL 2.0。 现在,我的理解是2.0版客户端hello应该只在客户端支持SSL版本2.0时发送。 从RFC 2246 : 支持SSL版本2.0服务器的TLS 1.0客户端必须发送SSL版本2.0客户端问候消息[SSL2] … 警告:发送版本2.0客户端问候消息的能力将被全部淘汰。 那么为什么Java使用它?
我正在改写我的问题,希望能得到更好的回应。 我在这里问了一个关于serverfault的类似问题,并认为一个正确和有效的TLS服务器是一个需要“STARTTLS”命令的服务器。 是否可以在不需要额外端口的情况下将STARTTLS发布到正确configuration的LDAP或HTTP TLS服务器? 我知道从SMTP的angular度来看这是真实的,但我不确定我可以将这些经验应用到其他协议的广泛程度。 我花时间阅读(但不完全掌握) TLS规范 TLS和SSL之间的区别 SSL规格 问:在通过LDAP或HTTP会话build立TLS之前,线路上会发生什么? 由于这是基于TCP的,我可以简单地telnet到该端口并发出一些命令来validation它的工作(到那一点)?
我们的系统与多个Web服务提供商进行通信 它们都是从一个Java客户端应用程序调用的。 到目前为止,所有的Web服务都已经通过SSL,但是没有一个使用客户端证书。 那么,一个新的伙伴正在改变这一点。 使应用程序使用证书进行调用很容易; 设置javax.net.ssl.keyStore和javax.net.ssl.keyStorePassword将做到这一点。 但是,现在的问题是如何使它只在调用特定的Web服务时使用证书。 我想更一般地说,我们希望能够select使用的客户端证书,如果有的话。 一个快速的解决scheme可能是设置系统属性,调用方法,然后取消它们。 唯一的问题是我们正在处理一个multithreading的应用程序,所以现在我们需要处理同步或locking或你有什么。 每个服务客户端应该是完全独立的,而且它们被单独打包在单独的JAR中。 因此,我所遇到的一个select(尽pipe我们没有正确地分析它)是以某种方式隔离每个JAR,或者将每个JAR加载到具有不同参数的不同VM上。 这仅仅是一个我不知道如何实现的想法(或者如果甚至可能的话)。 这篇文章build议可以从密钥库中select一个单独的证书,但是如何将它附加到请求中似乎完全是一个不同的问题。 我们使用由wsimport或wsdl2java生成的Java 1.5,Axis2和客户端类。