hud*_*udi 9 java authentication weblogic spring-boot
在我的weblogic服务器中,我有应用程序,其中启用了基本身份验证(web.xml和weblogic.xml).现在我将spring-boot应用程序从tomcat移植到weblogic,其中基本身份验证也是在应用程序层上.因此,当我移植它时,它不起作用,我需要设置enforce-valid-basic-auth-credentials为false.现在我希望我能重构我在同一个域上运行的第一个应用程序(它在虚拟主机上运行),但似乎身份验证仍然在这个应用程序中运行.那么当我在生产服务器上设置这个选项时会产生什么后果?
该
enforce-valid-basic-auth-credentials标志影响整个域。因此,它适用于您的两个项目。
默认情况下,enforce-valid-basic-auth-credentials 标志为 true,并执行 WebLogic Server 身份验证。如果身份验证失败,则拒绝该请求。因此,WebLogic Server 必须了解用户和密码。
如果您依赖替代身份验证机制,您可能希望更改默认行为。例如,您可能使用后端 Web 服务对客户端进行身份验证,而 WebLogic Server 不需要了解用户。启用默认身份验证强制后,Web 服务可以执行自己的身份验证,但前提是 WebLogic Server 身份验证首先成功。
如果将该enforce-valid-basic-auth-credentials标志显式设置为 false,则 WebLogic Server 不会对未为目标资源启用访问控制的 HTTP BASIC 身份验证客户端请求执行身份验证。
默认情况下启用 Oracle WebLogic Server 身份验证。但是,此配置会阻止 Oracle WebLogic Server 使用应用程序管理的身份验证。您必须通过将enforce-valid-basic-auth-credentials 参数设置为false 来禁用Oracle WebLogic Server 身份验证。
程序
要禁用 Oracle WebLogic Server 身份验证:
- 在文本编辑器中,打开
config.xml部署 IBM CMIS for Content Manager OnDemand 的域的文件。该config.xml文件位于 Oracle/Middleware/user_projects/domains/domain_name/config 目录中。- 找到
<security-configuration>元素。将以下参数添加到元素的末尾:
<enforce-valid-basic-auth-credentials>false</enforce-valid-basic-auth -credentials>启动或重新启动域中的所有服务器。
系统是否应允许具有无效基本身份验证凭据的请求访问不安全的资源。(接口=weblogic.management.configuration.SecurityConfigurationMBean 属性=getEnforceValidBasicAuthCredentials)
实际上,您需要在这里做两件事。
Run Code Online (Sandbox Code Playgroud)connect('weblogicUser','weblogicPassword','t3://localhost:7001') edit() startEdit() cd('SecurityConfiguration/Your_Domain') set('EnforceValidBasicAuthCredentials','false') save() activate()
注意:(不要忘记在“cd”命令中使用您的 weblogicUser、weblogicPassword、weblogic url 和您的域进行编辑...)。如果你成功地做这件事,那么它将影响你的配置文件。
重新启动服务器后,如果您查看config.xml文件,并添加了另一个标签。现在,config.xml文件看起来像这样:
.........
<enforce-valid-basic-auth-credentials>false</enforce-valid-basic-auth-credentials>
<use-kss-for-demo>true</use-kss-for-demo>
</security-configuration>
............
Run Code Online (Sandbox Code Playgroud)
但是这个use-kss-for-demo标签可能取决于你的 weblogic 配置。所以Val Bonn强烈建议使用 WSLT 方式来更新这个标志。
所以,你想知道影响是什么?
默认情况下,WebLogic Server 查看身份验证标头,即使您的代码和应用程序设置为允许匿名访问,如果有任何 HTTP 身份验证标头,WebLogic 也无法处理请求并抛出浏览器登录对话框:
默认情况下,发布者 Web 服务使用身份验证标头,因此发布者身份验证标头会发送到您的 portlet 代码。幸运的是,对此的修复非常简单,并记录在案以将强制有效基本身份验证凭据设置为 false。
| 归档时间: |
|
| 查看次数: |
5016 次 |
| 最近记录: |