我试图通过基本身份验证自动登录用户到Xwiki安装.这是因为帮助存储在wiki中,但我们希望检索过程对用户透明.
我们将用户推送到网址(通过<a>标签),例如:
http://username:password@xwiki.example.org/xwiki/bin/view/Main?basicauth=1
这在除Internet Explorer之外的每个浏览器中都能正常工作(请参阅:http://support.microsoft.com/kb/834489不幸的是,我们80%的用户群都使用Internet Explorer,并且不能让他们手动输入凭据.
目前,我们将IIS 7.5放在Xwiki前面,并将所有请求代理到另一台服务器上的Tomcat实例.这很好用.为了解决我的问题,我想我可以使用IIS重写规则来转换这样的URL:
http://xwiki.example.org/xwiki/bin/view/Main?basicauth=1&_username=username&_password=password
进入这个:
http://username:password@xwiki.example.org/xwiki/bin/view/Main?basicauth=1&_username=username&_password=password
想法是IIS将_username/_password查询字符串参数替换为URL并将其传递给Tomcat,Xwiki将忽略额外的参数.
我创建了一个URL重写规则,如:
<rule name="BasicAuthRewrite" enabled="true">
<match url="https?://(.+)&?_username=(.+)&_password=(.+)" />
<action type="Rewrite" url="http://{R:2}:{R:3}@xwiki.example.org/{R:1}" />
</rule>
Run Code Online (Sandbox Code Playgroud)
当我在IIS中使用"测试模式"并提供我的URL时,所有后向引用({R:x})都匹配到我想要的数据.但是,当我在浏览器中访问URL时,重写规则无法调用.
有什么方法可以实现我想要的行为吗?
我们使用 Keycloak 作为 SSO 提供商来登录我们所有的应用程序。
我们使用 keycloak 注销端点在领域级别注销并使用户的访问令牌无效。
我们的问题是,如果用户已连接websiteA并websiteB从 注销,他仍然可以通过浏览器websiteA进行活动的本地会话。websiteB
基本上我们希望用户注销websiteB,有点像如果您从 google 驱动器注销,那么一旦您打开 gmail.com,您也会从 gmail 注销
希望对我们来说,keycloak 支持OIDC 反向通道注销
因此,我们定义当用户从 keycloak 注销时,LogoutToken 会发送到我们选择的端点上的每个应用程序
比方说websiteB/backchannel-logout
因此,在我的 JEE 应用程序中,服务器会在 url 上收到 LogoutToken/backchannel-logout
这是注销令牌的样子,仅供参考
{
"iat": 1654177246,
"jti": "66265511-a5fc-4f60-b5b7-65bea0e1a9e2",
"iss": "https://mykeycloakserver.com/auth/realms/myRealm",
"aud": "websiteB",
"sub": "18e56c69-a90d-4f32-b76a-c9166def54d0",
"typ": "Logout",
"sid": "5bca2f13-f7a6-4b41-bdfc-1f7a89264149",
"events": {
"http://schemas.openid.net/event/backchannel-logout": {},
"revoke_offline_access": true
}
}
Run Code Online (Sandbox Code Playgroud)
此时,我收到了来自 SSO 提供商 keycloak 的注销请求,其中包含sub用户的唯一 ID,这样我就可以知道我想要注销的用户。
但基本上我只是收到一个包含logout_token来自 keycloak 的HttpRequest
String …
我正在编写一个 Java 组件,用于构建 wiki 中的所有页面。分配可以从 Java 服务组件中查看页面或空间的用户权限或组的最佳方法是什么?真的很难在 API 中找到有关此的详细信息。
如何在“ Velocity ”中一起使用String 和 Integer 变量?
#set ($var1 = "exp"+1)
Run Code Online (Sandbox Code Playgroud)
我试了几次,但我不能。
任何帮助将不胜感激。
我正在尝试在Tomcat上安装XWiki.我检查了web.xml并发现:
<display-name>xwiki</display-name>
<description>XWiki Application</description>
Run Code Online (Sandbox Code Playgroud)
但localhost:8080/xwiki返回错误404:
description请求的资源(/ xwiki)不可用.
我还发现:
<servlet-mapping>
<servlet-name>XWikiService</servlet-name>
<url-pattern>/XWikiService</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)
但同样的问题:
description请求的资源(// XWikiService)不可用.
我的安装有问题吗?我没有在catalina.out中发现任何错误.但是当我尝试战争名称:
本地主机:8080/XWiki实现企业的Web-4.1.2 /
有用!
我该怎么检查?