2015-12-06 19 views
1

При попытке установить класс «Dispatch Class» для любого приложения RESTful для удержания класса в системном пакете, например, «% WebTerminal.Router», любой запрос к этому веб-приложению отвечает «Запрет 403».Как разрешить приложение RESTful использовать системные классы в Caché?

Однако, когда я переименую пакет в «WebTerminal.Router» (без знака «%») и установите класс отправки в этот класс, все будет отлично.

Есть ли способ «разрешить» приложениям RESTful использовать системные классы?

ответ

2

3 способа, чтобы позволить% классы в НСП контексте:

а) Разрешить все% классы:

Set ^SYS("Security", "CSP", "AllowPercent")=1 

б) разрешить один класс для одного приложения:

Set ^SYS("Security", "CSP", "AllowClass", application, class)=1 

с) Разрешить один класс для всех приложений:

Set ^SYS("Security", "CSP", "AllowClass", 0, class)=1 

Любая из команд должна быть выполнена в пространстве имен% SYS.

+0

Спасибо! В моем случае идеальным решением было «set^SYS» («Безопасность», «CSP», «AllowClass», «/ terminal /», «% WebTerminal.Router») = 1' (слэш в конце имени веб-приложения обязательно) – ZitRo

1

Это не проблема RESTfull, это для всех% -классов. Вы можете прочитать об этом в документации here. Чтобы позволить этому просто сделать это.

zn "%SYS" 
Set ^SYS("Security", "CSP", "AllowPrefix", 0, "%WebTerminal") = 1 
+0

Спасибо! Интересно, что я пропустил этот момент в документации. – ZitRo