首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Xpage身份验证

Xpage身份验证
EN

Stack Overflow用户
提问于 2012-02-03 06:52:39
回答 5查看 4.1K关注 0票数 3

我有一个应用程序,将有匿名访问所有的xpage,除了几个。我需要强制用户登录这些xpages。使用beforepageload事件检查并将用户重定向到登录页面是正确的方式,还是有更好的方法?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-02-03 07:24:24

是的,这是一种有效的方法,也是我在自己的几个应用程序中处理这种情况的方法。

这是我使用的代码

代码语言:javascript
运行
复制
if (context.getUser().getCommonName() == "Anonymous"){
   sessionScope.put("entryPage",context.getUrl().getPath() + context.getUrl().getQueryString())
   context.redirectToPage("/login.xsp");
}

我将这个设置作为一个函数,我刚刚从beforePageLoad事件中调用了它。我正在重定向到另一个XPage,但您也可以重定向到将使用服务器上的身份验证类型设置的database.nsf?login。

票数 8
EN

Stack Overflow用户

发布于 2012-02-03 17:06:15

最好的解决方案是向XPages添加一个要求用户登录的ACL,这样您就不需要依赖自己的代码,而是可以让服务器为您做这项工作。

要添加访问控制列表,请转到XPage的所有属性并查找访问控制部分。然后,您可以添加一个或多个配置来定义谁拥有什么访问权限-例如,匿名没有访问权限,或者组或角色中的人员有访问权限等。

哑光

票数 10
EN

Stack Overflow用户

发布于 2013-04-09 19:22:05

我完全支持马特·怀特提供的答案

ACL最佳解决方案是向XPages添加

在我的XPages应用程序中,我使用了以下代码:

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

  <xp:this.acl>
    <xp:acl>
       <xp:this.entries>
          <xp:aclEntry type="ANONYMOUS" right="READER"></xp:aclEntry>
          <xp:aclEntry type="DEFAULT" right="EDITOR"></xp:aclEntry>
       </xp:this.entries>
    </xp:acl>
 </xp:this.acl>

...XPage content here...

</xp:view>

它的性能非常完美!试试看!)

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9121213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档