在本文中,我们将带你了解使用openshift在Apache服务器上设置身份validation在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的AD/表单身份validation、Apac
在本文中,我们将带你了解使用openshift在Apache服务器上设置身份validation在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的AD /表单身份validation、Apache .htaccess – 基于环境或主机名有条件地应用基本身份validation、Apache HTTP客户端javax.net.ssl.SSLPeerUnverifiedException:对端未通过身份validation、Apache MyFaces Extensions Validator 1.1.1 发布。
本文目录一览:- 使用openshift在Apache服务器上设置身份validation
- AD /表单身份validation
- Apache .htaccess – 基于环境或主机名有条件地应用基本身份validation
- Apache HTTP客户端javax.net.ssl.SSLPeerUnverifiedException:对端未通过身份validation
- Apache MyFaces Extensions Validator 1.1.1 发布
使用openshift在Apache服务器上设置身份validation
我读了这个http://www.apacheweek.com/features/userauth,并试图在Openshift中完成相同的工作,但我不知道如何。
林使用rhc和我试图通过ssh连接到我的应用程序,但我没有权限使用sudo su所以我不能继续。
例如,当我尝试创build文件nano /usr/local/etc/httpd我不能,因为我没有root权限。
> ls -la /usr/local/etc total 20 drwxr-xr-x. 2 root root 4096 jun 5 20:58 . drwxr-xr-x. 14 root root 4096 dic 11 2013 .. -rw-r--r--. 1 root root 1807 may 19 15:23 oom-kill-disable.conf -rw-------. 1 root root 1675 may 21 14:51 ops_file_transfer_upload_id_rsa -rw-r-----. 1 root root 399 jun 5 20:58 partitioner_disk_deFinitions.yaml
如果我有一个错误的方法,我会很感激你可以指导我。
WinRM无法处理请求。 错误0x80090311
更改Windows 7的login过程
SVN授权失败
MSsql连接string – 使用另一组凭据的Windows身份validation
validation已在批处理脚本中input了数字“X”
更新由于@davelopercorey现在build议我使用.htaccess文件
AuthType Basic AuthName "Authentication" AuthUserFile ${OPENSHIFT_REPO_DIR}.htpasswd Require valid-user
并添加用户和他的密码
htpasswd -cb .htpasswd myuser mypass
正在显示validation提示,但是我的用户和密码没有正确validation。
我已经使用whereis htpasswd以确保即时编写正确的path和问题仍然存在。
从PHP会话中填充apache日志文件中的远程用户
date时间select器最大值validation消息不在Windows Server 2003中工作
奇怪的窗户冒充行为
批处理脚本/ PowerShell高级条件执行
AD /表单身份validation
如果您使用的是支持.htaccess文件的磁带盒(如python或PHP),则可以将.htpasswd文件放在文件系统的任何位置。 我建议把它放在你的〜/ app-root / data目录下,然后你可以在你的.htaccess文件中指向它,并根据你放在.htaccess文件中的规则使用你想要的认证文件类型或目录等
最终的解决方案。 感谢@developercorey
在openshift中有一个叫做$ OPENSHIFT_REPO_DIR的环境变量,是你工作目录的路径,例如/var/lib/openshift/myuserlongid/app-root/runtime/repo/
我创建了一个名为SECURE的环境变量来包装文件夹路径。
rhc set-env SECURE=/var/lib/openshift/myuserlongid/app-root/data --app myappname
最后我用ssh连接到我的应用程序
rhc ssh myappname
并创建.htpasswd文件
htpasswd -c $SECURE/.htpasswd <username>
注:htpasswd的-c选项将创建一个新文件,覆盖任何现有的htpasswd文件。 如果您打算将新用户添加到现有的htpasswd文件,只需删除-c选项。
.htaccess文件
AuthType Basic AuthName "Authentication" AuthUserFile ${SECURE}/.htpasswd Require valid-user
首先使用ssh连接到服务器:
rhc ssh yourappname
然后进入app目录:
cd ${OPENSHIFT_REPO_DIR}
运行以下命令,然后复制结果:
${OPENSHIFT_REPO_DIR}
并在这个目录下创建.htaccess文件:
nano .htaccess
但在以前复制的文件中替换“/ var / lib / openshift / xxxxxxxxxxxxxxxxxxxxxxxx / app-root / runtime / repo /”,应该在.htaccess文件中:
AuthType Basic AuthName "Authentication required" AuthUserFile "/var/lib/openshift/xxxxxxxxxxxxxxxxxxxxxxxx/app-root/runtime/repo/.htpasswd" Require valid-user
然后创建.htpasswd文件:
htpasswd -c .htpasswd yourusername
然后你保存它。
我们可以使用内部的OPENSHIFT_data_dir变量,所以对于〜/ app-root / data / .htpasswd就足够了:
AuthType Basic AuthName "Authentication" AuthUserFile ${OPENSHIFT_data_dir}/.htpasswd Require valid-user
总结
以上是小编为你收集整理的使用openshift在Apache服务器上设置身份validation全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
AD /表单身份validation
我正在开发一个主要在内部使用的应用程序,并希望知道如何在不提示用户login的情况下自动对用户进行身份validation。
但是,当用户没有自动authentication(即他们已经通过互联网连接),我想显示一个表单,将validation用户对AD
谁能帮忙?
C#.NET应用程序在64位环境中运行时抛出ODBC驱动程序不匹配错误
如何检查是否有默认打印机(Windows)?
为什么我的WPF应用程序不显示?
与SystemParametersInfo和布尔值pvParam参数混合
C#桌面应用程序的哪些框架适用于Windows XP或更高版本?
静态string使用File.ReadAllText
是否有一个原因MailItem.display方法的z顺序行为不同机器?
从Perl调用.NET
为什么在Windows7(.net 3.5)中运行的应用程序在Win8(.net4.5)中不起作用
找出如果一个进程中断了当前进程
就ASP.NET而言,您希望将Windows和表单身份验证混合使用。 没有简单的解决方案。 已经在这里讨论了可能的解决方法:
混合Windows身份验证与表单身份验证
Apache .htaccess – 基于环境或主机名有条件地应用基本身份validation
我的开发设置:Mac OSX 10.7.4 / Apache 2.2.21 / PHP 5.3.10
我希望添加条件逻辑到我的.htaccess文件取决于开发与现场环境。 例如我想在活动服务器上进行身份validation,但不是在开发服务器上。 我在我的httpd.conf
SetEnv DEV 1
我已经确认这个var是通过检查PHPinfo()的输出来设置的。 然后在我的.htaccess文件中
htaccess在localhost中工作,但在EC2实例中不起作用
Laravel | 共享托pipe路线工作不正常
如何在.htaccess文件中限制/禁止访问特定的文件types,例如.js .css?
mod_rewrite:删除尾部斜线(只有一个!)
如何防止两个链接与.htaccess显示相同的内容?
<IfDefine !DEV> AuthType Basic AuthName "password protected" AuthUserFile /path/to/.htpasswd Require valid-user </IfDefine>
…但我仍然提示在我的本地开发密码。 看起来DEVvariables不可用于.htaccess 。 我的AllowOverride All设置在我的httpd.conf根目录的httpd.conf中。 有任何想法吗?
在apache中检查移动设备并redirect到移动网站
Apache文件夹没有显示出来
Prerender.io子页面redirect到索引
CSS,JS和图像不显示漂亮的url
htaccess可以读取在Apache中设置的服务器环境variables吗?
我从这个问题约4个小时开始新鲜了,我相信我有最后的答案,可以为大家总结如何解决这个特别痛苦的问题。
我使用Apache 2.2x和PHP 5.3作为我的开发机器的Windows 7家庭高级版。 我也想拥有一个DEV环境变量,我可以在我的.htaccess文件中使用它来关闭重写和其他指令,这些指令在我的开发环境中是无效的,但是对于我的生产环境是非常重要的。
我的.htaccess文件看起来像这样;
<IfDefine !__DEV__> AddType application/x-httpd-PHP53 .PHP </IfDefine>
HostGator告诉我,为了有PHP 5.3我需要修改我的htaccess文件这样启用它,否则我只会有PHP 5.2。 但是我已经在我的开发机器上拥有了它,所以这个指令导致我的客户网站在本地查看时崩溃。 我要解释的一切都使我可以在我的Git Repository中保存一个.htaccess文件,这个文件在两个位置都可以工作。
首先,让我清理/总结一下我在学习互联网时使用IfDefine和SetEnv解决这个问题的方法。
Apache中的IfDefine指令,只有,只有当我只说我只是意味着,响应在命令行传递的参数。 让我强调一点。 只有命令行!
SetEnv和SetEnvIf,是两个完全不同的东西。 一个(SetEnv)用于conf文件,设置在SERVER START TIME设置的环境变量(特定于apache)。 SetEnfIf用于REQUEST TIME,仅用于根据REQUEST变量确定要设置的内容。
IfDefine指令不读取由SetEnv或SetEnvIf设置的变量。 期。 没有任何争论,毫无疑问,没有“但我想……”否。 它没有,所以克服它。
最简单的答案是NO,你不能只使用httpd.conf中的“SetEnv DEV 1”,然后使用IfDefine在你的.htaccess文件中检测它,根据编程逻辑的语法和性质,这看起来很直观和合理我们习惯了。 回想一下,我们实际上并没有编程任何东西,这些都是配置文件,当然,他们也不符合这个期望,因为看起来他们应该这样做。
答案
所以这意味着我必须弄清楚如何给Apache添加一个启动参数,对于Linux专家来说,这个答案很容易得到,你只需要在envvars文件中添加正确的东西,但是我们可怜的windows junkies ?
对于Windows用户来说,由于以下原因,它变得更有趣:
Windows不允许你在Apache2.2的服务配置中永久添加启动参数(它不工作,不要尝试,我已经做了一百万次,相信我)。 这是真的,如果你进入并且试图放入你自己的参数,它只会工作一次,然后下次打开对话框时参数字段是空的。 我不知道为什么会出现这种情况,但似乎这些参数是用于测试的,而不是一个永久的修改。
安装Apache时,会在开始菜单中创建“开始”,“停止”和“重新启动”快捷方式,并安装Apache服务监视器。 但是开始菜单中的快捷方式使用的启动参数不同于apache服务监视器使用的启动参数。 所以,如果你使用这些方法的组合来启动/停止apache,你将得到不同的结果,这取决于你使用的是什么方法。 但是,您可以将-D“__DEV__”放在开始菜单的快捷方式中,它将起作用!
解决这个问题的步骤
要永久和普遍地设置一个__DEV__环境变量,您可以在.htaccess文件中使用IfDefine来引用,在Windows开发环境中,无论您是使用服务启动Apache还是开始菜单中的快捷方式,或者使用NET START / STOP命令行,请执行以下操作:
打开开始菜单快捷方式的属性,并提取在那里启动Apache的命令。 我是 “C: Program Files(x86) Apache Software Foundation Apache2.2 bin httpd.exe”-w -n“Apache2.2”-k start
修改它以包含新的-D __DEV__变量,它必须在httpd.exe之后立即开始; “C: Program Files(x86) Apache Software Foundation Apache2.2 bin httpd.exe” -D“__DEV__”- w -n“Apache2.2”-k start
你的开始菜单的快捷方式现在将启动Apache与您的开发变量。
转到命令行(以管理员身份)
类型:净停止apache2.2(或任何您的服务名称是为Apache)
现在在命令行中输入(或复制粘贴)与上面的开始菜单快捷方式中使用的命令相同的命令,但进行以下更改; “C: Program Files(x86) Apache Software Foundation Apache2.2 bin httpd.exe”-D“__DEV__”-w -n“Apache2.2”-k config
请注意单词start到config的更改。 这个神奇的命令所做的就是将你在屏幕上看到的设置保存到与Windows中的服务一起存储的设置中。 按Enter键。 从这一点开始,每当启动服务时,您的变量都会被传递,Apache服务监视器启动服务,或者Windows启动服务。
对不起,这部小说的每一个人,我都希望能够帮助别的疲惫的灵魂把这些信息加以总结和解释,我知道它会帮助我! :d
我的第一个答案的另一个选择是使用允许指令。
看看: http : //httpd.apache.org/docs/2.2/mod/mod_authz_host.html#allow
Order deny,allow Deny from all AuthType Basic AuthName "password protected" AuthUserFile /path/to/.htpasswd Require valid-user Allow from env=DEV Satisfy Any
这只会检查DEV是否存在的价值,这是如何Apache的工作。 将“允许”替换(或添加)为“允许来自127.0.0.1”,让您的本地主机始终处于开发模式。
这表明任何条件都可以接受,条件是:password或127.0.0.1。 如果你在本地主机上开发,你可以使用127.0.0.1,或者用你开发的任何IP代替。 这不需要被包裹在任何东西,只是放在你的htaccess文件。 我使用虚拟主机,所以我会把它放在那里。
来源(我改变它看起来你的原始代码): http : //www.askapache.com/htaccess/apache-authentication-in-htaccess.html#allow-conditional
2年,我有类似的问题。 具体而言,我们将自动部署到AWS OpsWorks堆栈,并且无法控制.htpasswd文件的放置(用于隐藏开发过程中的工作)。
我们最后的工作解决方案是沿着这个(Apache 2.2.25):
# check the host against a regex,defining env=DEV if it matches # this guy matches localhost,dev.project and 10.1.XX SetEnvIfNoCase Host "^(localhost|dev.project|10.1(.d+){2})$" DEV AuthType Basic AuthName "Restricted" # auth file location,in our case defined by an AWS OpsWorks auto-deployment # this only gets loaded if the regex above doesn''t match,which is handy AuthUserFile /srv/www/project/current/.htpasswd Require valid-user Satisfy any Order deny,allow Deny from all Allow from env=DEV
该解决方案足够灵活,可以在多个开发环境中进行访问,同时验证其他许多开发环境。 在git提交之前,不需要忽略或编辑htaccess。 一个环境变量可能看起来有点过分,但它允许一个正则表达式,也可以在其他地方使用。
请参阅: http : //httpd.apache.org/docs/2.2/howto/access.html
Debian / Ubuntu的解决方案:
在/etc/apache2/envars中必须改变:
## If you would like to pass arguments to the web server,add them below ## to the APACHE_ARGUMENTS environment. #export APACHE_ARGUMENTS=''''
至
## If you would like to pass arguments to the web server,add them below ## to the APACHE_ARGUMENTS environment. export APACHE_ARGUMENTS=''-D __DEV__''
现在可以使用了
<IfDefine !__DEV__> ... </IfDefine>
我喜欢回答问题,但快速的谷歌搜索给了我你的答案。 查看apache文档: http : //httpd.apache.org/docs/2.0/mod/core.html#ifdefine
IfDefine指令只能测试一个“参数名称”,而“参数名称”是启动时由httpd设置的一个变量。
也检查出这个网站,并向下滚动到表格: http : //turboflash.wordpress.com/2010/05/27/apache-environment-variables-visibility-with-setenv-setenvif-and-rewriterule-directives/
如果你刚刚开始你的开发网络服务器,你仍然可以问:
$ httpd -DDEV
这将定义变量DEV 。 请注意,你不需要设置任何东西,被定义基本上设置为1 / true。 如果它不存在就像被设置为false / 0 / null / etc …
总结
以上是小编为你收集整理的Apache .htaccess – 基于环境或主机名有条件地应用基本身份validation全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
Apache HTTP客户端javax.net.ssl.SSLPeerUnverifiedException:对端未通过身份validation
我们正在开发一个使用tomcat和jersey的应用程序。
在这个networking应用程序中,我们需要连接到一个valid ,没有过期的certificate的https Website 。 如果我通过我的Chrome浏览器在本地连接到本网站,一切正常! 不幸的是,我们的webapp的tomcat服务器抛出一个exception。 我们使用Apache HttpClient (4.0)连接到https站点:
javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated at sun.security.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:371) at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:126) at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:572) at org.apache.http.impl.conn.DefaultClientConnectionoperator.openConnection(DefaultClientConnectionoperator.java:180) at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:294) at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:645) at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:480) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:784)
服务器证书是绝对有效的,从thawte 。 三种不同的在线工具成功validation了证书。
Openssl也有一个问题,并向我展示了三个证书,但抛出了一个简单的错误:
Verify return code: 20 (unable to get local issuer certificate)
openssl的问题似乎是它使用错误的path/usr/lib/ssl而不是/etc/ssl/certs 。 如果我使用指向正确path的CApath参数,openssl工作正常,所以这可能是httpClient的问题?
所以我们的默认客户端代码非常简单:
使用ajp进行Spring Boot应用程序的Apache后面的Tomcat
无法find或加载主类org.apache.hadoop.util.VersionInfo
如何使用.htaccess服务gziped字体? (没有mod gzip或deflate)
我怎样才能看到有多less个MysqL连接打开?
Rails 3.1,Unicorn和Apache:静态文件
client = new DefaultHttpClient(); response = client.execute(url); //this throws the exception EntityUtils.consume(response.getEntity());
通过实现自定义的TrustedManager来允许任何证书不是一个选项! 还有,我读过,有些CA不是JDK / JRE的一部分,所以它的证书应该手动导入keystore或者使用自定义的证书,但是thawte是一个众所周知的CA,不应该在默认情况下工作?
编辑
我确实在catalina.sh中设置了javax.debug属性,这样我就可以得到关于这个问题的更多信息:
http-bio-8080-exec-1,handling exception: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path validation Failed: java.security.cert.CertPathValidatorException: basic constraints check Failed: pathLenConstraint violated - this cert must be the last cert in the certification path
我将不胜感激任何帮助! 提前致谢!
http:// localhost / PHPpgadmin / – > 403禁止
构build“大型”Rails应用程序的最佳实践
我们如何在同一台机器的Windows 7上运行Apache Http Server的两个实例
Django WGSIpath
.htaccess通过虚拟主机的基本身份validation?
好吧,我得到它的工作! 虽然thawte是一个众所周知的CA,但似乎Java SSL确实有一些问题。 通过openssl下载ssl证书后:
echo | openssl s_client -connect ${REMHOST}:${REMPORT} 2>&1 | sed -ne ''/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p''
并将其保存到pem文件中,我手动导入到java密钥库中:
keytool -import -alias myAlias -file theCert.pem -keystore lib/security/cacerts
我不知道为什么Java SSL不能正确地验证thawte证书。
列出keystore显示我在标准密钥库中有7个thawte受信任的证书,但奇怪的是它没有工作,直到我手动导入pem文件
我想了解你的设置。 你有一个SSL证书(由Thwate发行),安装在tomcat中,你可以使用IE或者Firefox或者Chrome来访问你的站点。
但是当您尝试使用HttpClient访问它时,您会收到上述错误?
那是对的吗 ?
错误清楚地表明您的客户不信任CA. 但是,如果证书由Thwate签名(并且安装正确并且可以通过IE / Firefox等访问),那么它应该可以正常工作。
总结
以上是小编为你收集整理的Apache HTTP客户端javax.net.ssl.SSLPeerUnverifiedException:对端未通过身份validation全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
Apache MyFaces Extensions Validator 1.1.1 发布
Apache MyFaces Extensions Validator 是一个用以验证表单输入的一套MyFaces的扩展框架,基于Java的Annotation的技术编写。
1.1.1 版本的更新内容包括:
提升
- [EXTVAL-7] - refactoring the core to get independent of cglib
- [EXTVAL-20] - extension point for alternative (optional) configuration mechanisms
新特性
- [EXTVAL-12] - zero configuration
- [EXTVAL-13] - validation of custom annotations
- [EXTVAL-14] - custom validation strategies for existing annotations
- [EXTVAL-15] - pluggable validation logic
- [EXTVAL-16] - pluggable message resolver
- [EXTVAL-17] - join client-side validation mechanisms of existing component libs
- [EXTVAL-18] - customizable name conventions
- [EXTVAL-19] - dependency injection support
- [EXTVAL-21] - annotations for standard validators
- [EXTVAL-22] - cross(-component) validation
- [EXTVAL-23] - validation based on jpa 1.0 annotations
- [EXTVAL-24] - join validation
- [EXTVAL-25] - skip validation support
- [EXTVAL-26] - validation exception interceptor
关于使用openshift在Apache服务器上设置身份validation的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于AD /表单身份validation、Apache .htaccess – 基于环境或主机名有条件地应用基本身份validation、Apache HTTP客户端javax.net.ssl.SSLPeerUnverifiedException:对端未通过身份validation、Apache MyFaces Extensions Validator 1.1.1 发布的相关信息,请在本站寻找。
本文标签: