forum.bitel.ru http://forum.bitel.ru/ |
|
[6.0] Разграничение прав и вебсервисы http://forum.bitel.ru/viewtopic.php?f=19&t=8357 |
Страница 1 из 1 |
Автор: | Phricker [ 14 авг 2013, 17:31 ] |
Заголовок сообщения: | [6.0] Разграничение прав и вебсервисы |
По мотивам этой темы и вики Раньше, для того чтобы выполнить столь простейшее действие как запретить определенным пользователям выставлять статус с пустым комментарием достаточно было добавить в kernel.xml Код: <action id="10000" mask="module=contract.status;action=ContractStatusChange;comment=" title="Изменение статуса"/> <action id="264" mask="module=contract.status;action=ContractStatusChange" title="Изменение статуса"/> Сейчас же для этого необходимо городить отдельный вебсервис, при этом опять таки непонятно, как ограничить конкретным пользователям без необходимости постоянно править код. Будет ли эта ситуация как-то решаться в сторону упрощения? Ведь я так понимаю, что в планах перевести всё на вебсервисы, так что данный вопрос стоит довольно остро. |
Автор: | Phricker [ 15 авг 2013, 10:44 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
Вверх |
Автор: | Phricker [ 16 авг 2013, 00:20 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
Снабдите Димона всем необходимым для подумать ![]() ![]() |
Автор: | dimOn [ 16 авг 2013, 12:05 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
А я тут причём) |
Автор: | Phricker [ 16 авг 2013, 12:09 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
Ты моск! ![]() ![]() |
Автор: | dimOn [ 16 авг 2013, 12:21 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
а, ну это да ![]() |
Автор: | dimOn [ 16 авг 2013, 12:22 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
Смысл в том, чтобы в этих строках учитывать и параметры веб-сервисов? |
Автор: | Phricker [ 16 авг 2013, 12:41 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
ты правильно понял ![]() Код: <service id="10000" name="ContractStatusMonitorService" operation="changeContractStatus" comment="" title="Смена статуса у договоров без комментария"/> <service id="264" name="ContractStatusMonitorService" operation="changeContractStatus" title="Смена статуса у договоров"/> И мог бы просто каким то группам пользователей выдавать доступ а каким то нет. в вебсервисе который я пишу сам - я хз как это сделать так же удобно и галочками ![]() |
Автор: | Phricker [ 18 авг 2013, 22:14 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
уп |
Автор: | stark [ 19 авг 2013, 17:11 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
Можно попробовать сделать как вот тут |
Автор: | Phricker [ 19 авг 2013, 18:09 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
А можно пример? Из дебага клиента ничего не понял Код: http://10.0.6.152:8080/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.status/ContractStatusMonitorService?wsdl -> {http://service.common.status.contract.kernel.bgbilling.bitel.ru/}ContractStatusMonitorService:changeContractStatus <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns5:changeContractStatus xmlns:ns5="http://service.common.status.contract.kernel.bgbilling.bitel.ru/" xmlns:common="http://common.bitel.ru" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><cid>1</cid><statusId>0</statusId><dateFrom>2013-08-19T00:00:00+04:00</dateFrom><comment/></ns5:changeContractStatus></S:Body></S:Envelope> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Header/><S:Body><ns5:changeContractStatusResponse xmlns:ns5="http://service.common.status.contract.kernel.bgbilling.bitel.ru/" xmlns:common="http://common.bitel.ru" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xml="http://www.w3.org/XML/1998/namespace"/></S:Body></S:Envelope> Попробовал добавить правило в котором будет любой path, но отрабатывается не оно. Код: <service id="1000" name="ContractStatusMonitorService" operation="changeContractStatus" title="Смена статуса у договоров без комментария" > <eq path=".*" /> </service>
|
Автор: | Amir [ 19 авг 2013, 19:08 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
path - это xpath. <eq path="./*/comment" value=""/> или <regexp path="./*/comment" value="\s*"/> |
Автор: | Phricker [ 19 авг 2013, 19:33 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
в случае если я указываю Код: <service id="1000" name="ContractStatusMonitorService" operation="changeContractStatus" title="Смена статуса у договоров без комментария" > <regexp path="./*/comment" value="\s*"/> </service> <service id="264" name="ContractStatusMonitorService" operation="changeContractStatus" title="Смена статуса у договоров" /> то ловлю npe вот лог клиента. при этом смены статуса не происходит и в журнале запросов пусто. Код: http://10.0.6.152:8080/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.status/ContractStatusMonitorService?wsdl -> {http://service.common.status.contract.kernel.bgbilling.bitel.ru/}ContractStatusMonitorService:changeContractStatus <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns5:changeContractStatus xmlns:ns5="http://service.common.status.contract.kernel.bgbilling.bitel.ru/" xmlns:common="http://common.bitel.ru" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><cid>1</cid><statusId>3</statusId><dateFrom>2013-08-19T00:00:00+04:00</dateFrom><comment/></ns5:changeContractStatus></S:Body></S:Envelope> ну а в случае Код: <service id="1000" name="ContractStatusMonitorService" operation="changeContractStatus" title="Смена статуса у договоров без комментария" ><eq path="./*/comment" value=""/></service> <service id="264" name="ContractStatusMonitorService" operation="changeContractStatus" title="Смена статуса у договоров" /> отрабатывает правило ID = 264 |
Автор: | Phricker [ 19 авг 2013, 19:46 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
Попробовал вот так (мало ли, что там в комменте передается. в журнале запросов при пустом комменте пишется <comment xmlns=""/>) Код: <service id="1000" name="ContractStatusMonitorService" operation="changeContractStatus" title="Смена статуса у договоров без комментария" > <eq path="./*/cid" value="1" /> </service> В этом случае если я правильно все понял, это правило должно отработать в том случае если статус будет меняться на договоре с ID = 1. Но что-то не айс ![]() |
Автор: | Phricker [ 21 авг 2013, 01:29 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
А что это значит? Цитата: 1565 20.08.2013 17:52:46 ИСПРАВЛЕНО License: Генерация документа допика. Типа такой ненавязчивый АП ![]() |
Автор: | Phricker [ 29 авг 2013, 16:35 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
skyb напомнил про эту тему ![]() Ну так как оно там? |
Автор: | dimOn [ 29 авг 2013, 17:40 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
в todo вроде заносил... |
Автор: | Phricker [ 29 авг 2013, 17:58 ] |
Заголовок сообщения: | Re: [6.0] Разграничение прав и вебсервисы |
Ожидаем тады. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |