...
Или, для последнего случая, просто ссылкой:
Блок кода |
---|
language | xml |
---|
title | Аутентификация по IP-адресу без страницы логина |
---|
|
<a href="lk.provider.ru/index.xhtml?authMode=ip">Личный кабинет</a> |
...
Страница будет открыта, только если к ней разрешен доступ в mybgbilling-menu.groovy.
Ограничение доступа
Для некоторых режимов аутетификации можно ограничить доступ к различным действиям и пунктам меню. Это может быть удобно, например, для режима аутентификации по IP-адресу. Для этого нужно указать в режиме аутентификации role = 'unauthCustomer':
Блок кода |
---|
|
modes = [
...
authenticationMode {
mode = 'ip'
module = 'inet'
moduleId = 13
role = 'unauthCustomer'
//filter = { contract -> contractInGroup( contract, [4, 8, 15, 16, 23, 42] ) }
}
] |
В этому случае, если абонент аутентифицируется через данный режим, в mybgbilling-menu.groovy и mybgbilling-conf.groovy вызов isCustomer() будет возвращать false. Соответственно, например, данный пункт меню в этом случае будет недоступен абоненту:
Блок кода |
---|
|
// Тарифные опции
menu( page: "kernel/tariffOptions", icon: "fa-cogs", title: "menu.tariffOptions", show: isCustomer() ), |
Т.к. у него параметр show зависит от isCustomer(). А изменение лимита запрещено (даже если пункт меню "Баланс" доступен), т.к. в mybgbilling-conf.groovy указано:
Блок кода |
---|
|
// limit.xhtml
limit {
// возможность изменения лимита договора
limitChange = { contract -> (contract.balanceMode == (byte)1) && isCustomer() }
} |