Аутентификация Xpage - PullRequest
       4

Аутентификация Xpage

3 голосов
/ 03 февраля 2012

У меня есть приложение, которое будет иметь анонимный доступ ко всем xpages, кроме пары.Мне нужно заставить пользователя войти на эти xpages.Правильно ли используется событие beforepageload для проверки и перенаправления пользователя на страницу входа или есть лучший способ?

Ответы [ 5 ]

10 голосов
/ 03 февраля 2012

Лучшим решением было бы добавить ACL к XPages, который требует от пользователя входа в систему, тогда вы не полагаетесь на свой собственный код, но можете позволить серверу выполнить работу за вас.

Чтобы добавить ACL, перейдите в раздел «Все свойства» XPage и найдите раздел «Контроль доступа». Затем вы можете добавить одну или несколько конфигураций, чтобы определить, кто имеет к какому доступу - например, Аноним не имеет доступа, или люди в группе или роли имеют доступ и т. Д.

Мэтт

8 голосов
/ 03 февраля 2012

Да, это был бы правильный способ сделать это, и именно так я справляюсь с ситуацией в паре моих собственных приложений.

Это код, который я использую

if (context.getUser().getCommonName() == "Anonymous"){
   sessionScope.put("entryPage",context.getUrl().getPath() + context.getUrl().getQueryString())
   context.redirectToPage("/login.xsp");
}

У меня есть эта настройка как функция, которую я просто вызываю из события beforePageLoad.Я перенаправляю на другой XPage, но вы также можете перенаправить на файл database.nsf? Login, который будет использовать настройку типа аутентификации на сервере.

4 голосов
/ 09 апреля 2013

Я полностью поддерживаю ответ, предоставленный: Мэтт Уайт

Лучшим решением было бы добавить ACL к XPages

В моем приложении XPages я использую следующий код:

<?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>

Работает просто отлично! Попытайся! )

1 голос
0 голосов
/ 16 июля 2014

Вы также можете посмотреть здесь:

http://www.ovalbusinesssolutions.co.uk/thoughts/securing-your-xpages-website-using-public-access-2

Если вы снимите флажок «Доступно для пользователей общего доступа» (по умолчанию он снят) для XPages, где вы хотите принудительно войти в систему, пользователь будет автоматически перенаправлен на вход и после успешного входа вернуться к XPage, который он пытался открыть.

...