|
Доступ!
|
|||
---|---|---|---|
#18+
Здравствуйте! Пишу дипломку на cache 2005 "Web-site образовательного учреждения"! У меня есть проверка на сайте на логин и пароль. Она только проверяет и все. У меня вопрос по доступу. Может кто-нибудь подсказать как сделать так, чтобы зарегистрированные пользователи могли заходить на определенные страницы, а незарегистрированные пользователи нет? Использовать Coocie или можно использовать глобалы? И как сделать так чтобы при загрузке страницы она проверяла зареген пользователь или нет? Я новичок в каше поэтому может что-то неправильно описал. Заранее ответившим спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 13:02 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Роль Каше в этом вопросе на втором плане :) Ты это умееш делать не в Каше? ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 13:45 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Нет, я и в каше и в web-технологиях новичок! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 13:49 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Дело осложняется... :( Вот один из примеров редиректа Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 14:01 |
|
Доступ!
|
|||
---|---|---|---|
#18+
А как нибудь так нельзя типа:кодом каше Код: plaintext 1. 2. 3. 4. 5.
^ok -- глобальная переменная ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 14:19 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Думаю что тут желательно разграничить "обязанности"... Каше пусть занимается данными... А управлением страниц пусть займется что-то вебовское... Для начала тебе нужно решить какие данные будут использоваться в задачке... Как их хранить... После этого можно двигаться дальше. ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 14:28 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Напиши на ksa@npcair.ru пришлю тебе для ознакомления курс молодого кашевара Почитай... Просто тут не крепится... Файл большеват :( ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 14:33 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Делать наверно нужно примерно так 1. Берем параметры логин-пароль. 2. Проверяем их, если проверка прошла, записываем их внутри базы (типа такой-то зашел под такой сессией) 3. В каждой странице в методе OnPreHTTP проверяем залогинился ли под этой сессией какой-нибудь пользователь, и можно ли ему открывать эту страницу. Если OnPreHTTP возращает 1, то загрузка тела страницы продолжается, если 0, то обрывается ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 14:38 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Ну у меня на сайте будет 5 ролей это пользователь студент преподаватель декан администратор пользователь - не может делать ниче только просмотреть сайт студент - может просмотрть базу "оценки" добавлять комментарии к лекциям преподаватель - может смореть базу "оценки" и список студентов а также добавлять лекции декан - может смотреть список преподавателей, список студентов, базу "оценки" администратор - может смотреть редактировать все. так нормально будет? Может Вы посоветуйте как-нить получше! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 14:42 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Блок А.Н. 2. Проверяем их, если проверка прошла, записываем их внутри базы (типа такой-то зашел под такой сессией) А сессии всегда же разные, или нет? Если я зашел в 1 раз сессия допустим 2885876 если зашел в 2 раз то сессия 45135443 или я не прав? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 14:47 |
|
Доступ!
|
|||
---|---|---|---|
#18+
В течении одного сеанса сессия одна, но между сеансами уникальная Поэтому нужно хранить связку сессия/пользователь, а связку эту делать в момент логина. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 15:08 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Блок А.Н. А вы не могди бы на небольшом примере показать? Как примерно это выглядит! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 15:11 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Я думаю не стоит усложнять задачу, необходимо простейший пример для дипломной работы, крутых наворотив с супер безопасности тут не нужно. Просто в OnPreHTTP метода страницы размещаешь примерно следующий код Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Далее в коде можно проверять %session.Get("status") и в зависимости от роли, давать или не давать пускать или не пускать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 15:46 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Спасибо всем ответившим! Постараюсь разобраться, если не получится в этот же топик обращусь! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 15:58 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Попробую, только придется много выкидывать из текста, и кое-что добалять, так что не факт, что будет работать без отладки. Я постараюсь покороче Страница входа: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
Класс Пользователя Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61.
И примерно так main.csp или другая csp-шка Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Да, так как каше - все-таки объектная система, то например метод OnPreHTTP можно определить в классе и наследовать от него CSP-шки тегом Код: plaintext
Примерно так, я думаю. В этом примере один пользователь может зайти только с одной машины. Если он зайдет с другой сессией, то предыдущая сотрется. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 16:09 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Вот так и выкладывают "исходники" ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 16:54 |
|
Доступ!
|
|||
---|---|---|---|
#18+
авторВот так и выкладывают "исходники" А вы про что? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2007, 17:31 |
|
Доступ!
|
|||
---|---|---|---|
#18+
А я что-то не очень доверяю сессиям... :( Т.к. они "исчезают" через некоторый таймаут... В основном используем %request ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2007, 08:19 |
|
Доступ!
|
|||
---|---|---|---|
#18+
ОГРОМНОЕ СПАСИБО всем кто ответил! Постараюсь разобраться! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2007, 10:16 |
|
Доступ!
|
|||
---|---|---|---|
#18+
А я что-то не очень доверяю сессиям... :( Т.к. они "исчезают" через некоторый таймаут... Запросы можно гонять в отдельном окне или фрейме. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2007, 11:50 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Дело не в запросах... А в самой природе сессий... ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2007, 13:28 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Ну правильно, такая у них природа, мрут без работы. Заставляйте их работать ;-) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2007, 13:48 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Блок А.Н.Заставляйте их работать ;-) Так мы сосвоим ПО не работаем ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2007, 15:58 |
|
Доступ!
|
|||
---|---|---|---|
#18+
А как еще с ПО нужно работать. Если ПО работает (включено) - сесиия живет. Не работает (выключено) - сессия дохнет. Да здраствует сессии неработающего ПО ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2007, 17:47 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Наши пользователи очень любят зайти в приложение и ничего в нем не делать... Таймаут кончается... Сессия помирает... :( Потом они загораются желанием поработать но уже поздно. :) Вот отсюда ноги и растут... ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2007, 08:07 |
|
Доступ!
|
|||
---|---|---|---|
#18+
в своих CSP приложениях "заставляем работать" следующим образом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2007, 08:25 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Можно использовать совместно куки и сессии, тогда не надо постоянно поддерживать их жизнь. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2007, 09:08 |
|
Доступ!
|
|||
---|---|---|---|
#18+
aleshapМожно использовать совместно куки и сессии Примерчик с куками можете подогнать? С куками проблема... Пользователь их может отключить... :( ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2007, 10:03 |
|
Доступ!
|
|||
---|---|---|---|
#18+
krvsaНаши пользователи очень любят зайти в приложение и ничего в нем не делать... Таймаут кончается... Сессия помирает... :( Потом они загораются желанием поработать но уже поздно. :) Вот отсюда ноги и растут... ---------- Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT Дык про то и речь - почему приложение себя так ведет ? Оператору предположим делать нечего - а приложению ? Даже TCP-приложение "поддерживают коннект" - не так ли. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2007, 11:59 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Хотел бы пару моментов написать, но не про сессии (поведение, которых, кстати, изменилось в Cache' 5.1. по сравнению с более ранними версиями), а про хранения пользователей, роли пользователей, их привелегии и т.д. Для хранения информации о пользователях рекомендую использовать стандартные возможности Cache' 5.1, 5.2, 2007.1, ... Нужно завести роли: пользователь, студент, преподаватель, декан, администратор. Далее можно создать набор ресурсов Вашего приложения в Портале Управления Системой. Это описано в документации Cache' . Назначить в портале права ролей пользователей на эти ресурсы. В Вашем приложении Вы можете в определенных местах (например, где формируется меню доступа к страницам) проверять есть ли права у пользователя: Код: plaintext
Если право есть, отрисовывать или давать возможность перехода на страницу по ссылке. Если нет - не пускать. То есть можно воспользоваться готовой системой безопасности Cache'. В ZEN все это сделано автоматически. Можно ставить в соответствие ресурс и компонент (например, пункт меню). Если есть возможность лучше делать Web-приложение на ZEN, но для этого нужно иметь Cache' 2007.1. Вадим ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2007, 15:38 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Я так понимаю, что на каждую таблицу надо установить роли, и потом при обращении к этой таблицы проверять? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2007, 07:49 |
|
Доступ!
|
|||
---|---|---|---|
#18+
У нас темы дипломных проектов схожи! у меня тоже сайт про униветситет! ты не мог бы выслать мне свой,jakonda666@mail.ru? я могу своим поделиться.....не могу администрирование сделать никак((((( ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2007, 14:42 |
|
Доступ!
|
|||
---|---|---|---|
#18+
авторЯ так понимаю, что на каждую таблицу надо установить роли, и потом при обращении к этой таблицы проверять? Ну по крайней мере в каше 5.2 и ниже разрешения на таблицу не установите. Лучше разрешения ставить на интерфейс, и проверять - эта страница разрешена? А эта кнопка на странице разрешена? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2007, 15:13 |
|
Доступ!
|
|||
---|---|---|---|
#18+
krvsa aleshapМожно использовать совместно куки и сессии С куками проблема... Пользователь их может отключить... :( Отключить можно все... и куки и скрипты и flash... можно и браузер удалить и винду... Думаю это уже проблема пользователей, другое дело, то что их об этом необходимо оповещать. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2007, 16:31 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Блок А.Н. авторЯ так понимаю, что на каждую таблицу надо установить роли, и потом при обращении к этой таблицы проверять? Ну по крайней мере в каше 5.2 и ниже разрешения на таблицу не установите. Лучше разрешения ставить на интерфейс, и проверять - эта страница разрешена? А эта кнопка на странице разрешена? Не совсем понимаю, почему? На уровне SQL в Cache' всегда было можно ограничить доступ к таблицам, видам и хранимым процедурам. В Cache' 2007.1. будет еще разграничение доступа к таблице на уровне записей. Другое дело, что если говорить про создания Web-приложения, то Вы правы, более правильно разграничить доступ на уровне приложения к фрагментам Web-приложения. С уважением, Вадим ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2007, 23:56 |
|
Доступ!
|
|||
---|---|---|---|
#18+
VadimF Блок А.Н.Ну по крайней мере в каше 5.2 и ниже разрешения на таблицу не установите. На уровне SQL в Cache' всегда было можно ограничить доступ к таблицам, видам и хранимым процедурам. Ага, соврал :-(. Хотел сказать, что нельзя таблицам присвоить имя ресурса. Ведь для ресурса в каше 5можно проверить, доступен ли он $System.Security.Check А как это сделать для таблицы? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2007, 05:08 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Выкладываю работу! Может поможет немного разобраться! Файл Diplom.xml импортировать локально в Cache 5 Папку "Images" скопировать на диск C:\ ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2007, 09:42 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Hi! VadimF То есть можно воспользоваться готовой системой безопасности Cache'. Для диплома, безусловно, можно. Но в боевой системе все не так просто. 1. Если что-то работало в предыдущей версии Cache, то оно может не заработать в следующей или будет работать по-другому. Cache весьма быстро развивается и меняется. Для будущих заказчиков это показатель крутизны, а для существующих - проблема. Поскольку разработчикам и тестерам нужно забивать в план работ довольно серъезные сроки на перенос системы на другую версию Cache. И это нередко останавливает от попыток использовать что-то готовое крайне быстро эволюционирующее. Выше крыши хватает мелкософта, который вынуждает всех конкурентов тратить время не на развитие прикладных систем, а на постоянный перенос их с одной версии винды на другую. 2. На одном сервере может крутиться несколько баз с весьма разной архитектурой безопасности. А пользователи и привилегии в Cache назначаются на сервер в целом, а не на конкретную базу с конкретным приложением. Одно дело, когда есть DBA, который отвечает за функционирование сервера в целом, создание бекапов и т.д., но ему нет дела до особенностей бизнес-логики конкретного приложения, а совсем другое, когда администратор безопасности именно конкретного приложения добавляет/удаляет пользователей, раздает доступ на ресурсы в соответствии с бизнес-логикой приложения, но ему нет дела до технических проблем, бекапов, производительности, наличия места на дисках, знания, что в каких таблицах находится и т.д. И если разные приложения разработаны разными независимыми компаниями, то в целях избежания головной боли от совместимости лучше будет ставить их на разные физические сервера со своей Cache. Но тут уже совсем другая лицензия нужна. 3. Вопрос, тесно связанный с предыдущим пунктом, это невозможность бэкапа информации по пользователям, их правам доступа к данным вместе с самими данными конкретной базы. И соответственно, востановления из бэкапа так, чтобы это не повляло на пользователей, других приложений, которые крутятся на этом сервере. Или, к примеру, стандартная процедура апгрейда приложения. Делается бекап боевой базы с первого сервера, восстанавливается на физически отдельном втором тестовом сервере (где может стоять другая версия Cache), либо если боевой сервер можно остановить, то в него втыкается винчестер, туда копируется CACHE.DAT и этот винчестер переносится на второй сервер. Понятно, что копировать базу по сети бессмысленно. На тестовом сервере ставится новая версия приложения, проверяется и отрабатывается процедура перехода. Затем она воспроизводится на боевом сервере (либо просто юзеров переключают с первого сервера на второй). Вопрос: как перенести информацию о 500 пользователях, привилегиях и правах доступа с первого сервера на второй? Попытка просто скопировать базы CACHESYS и CACHEAUDIT привела к неработоспособности второго сервера из-за того, что он оказался в другом Windows домене. Т.е. завязка на аутентификацю операционной системы или Kerberos - рискованная штука. Бэкап базы трехлетней давности может запросто не подняться, если одновременно с ним не поднять бэкап на контроллере домена. 4. Если разграничение доступа является существенной частью бизнес-логики приложения, то вероятнее всего будут и особые требования к функционалу системы безопасности. Казалось бы, вполне примитивное требование, что рядовой пользователь, не являясь админом, должен иметь возможность поменять пароль сам себе. В то-же время, админ не должен знать пароли пользователей и сам их менять. Разве что задавать начальный пароль пользователю при регистрации в системе нового пользователя, но должен поставить галочку "Требовать от пользователя смены своего пароля при первом входе в систему". Тем не менее, мне не удалось найти такой простой возможности "в готовой" системе безопасности Cache. То есть, если заказчик такую функцию потребует, то останется только сказать: "Обращайтесь к Интерсистемсу, и тогда, возможно, когда-нибудь..." А кроме такой мелочи, могут быть и более интересные вещи. У нас, к примеру иерархическая система групп (ролей). В состав группы могут входить другие группы и пользователи, в то-же время пользователь и группа может входить в состав нескольких групп. Кроме разрешений бывают еще и запреты. Если у группы "А" есть разрешение на ресурс "1" и ресурс "2", а у группы "Б" есть запрет на ресурс "2" (про ресурс "1" ничего не сказано), то пользователи, входящие только в группу "А" получат разрешение на оба ресурса, входящие только в группу "Б" - ни на один ресурс, входящие и в группу "А" и в группу "Б" - разрешение только на ресурс "1". Когда в системе под 500 пользователей, гибкость и удобство системы разграничения доступа, а также пользовательский интерфейс имеют значение. Попробуйте реализовать Drag & Drop пользователей из группы в группу на WEB - интерфейсе встроенной в Cache системы безопасности. Вообще, перевод администрирования Cache на CSP - не самое удобное IMHO с точки зрения возможностей пользовательского интерфейса решение. Интерфейс можно улучшить, если сделать навороченный апплет на яве, но тогда чем он будет отличаться от старого доброго "толстого" клиента? Разве что кроссплатформенностью. С каждым пользователем и группой может быть ассоциирована масса информации и индивидуальных настроек внешнего вида приложения, а не только логин или пароль. Например, рабочий телефон, e-mail, фотография и т.д. Часть этой информации может поменять только администратор, часть - сам пользователь. Да и создание/удаление/перемещение из группы в группу пользователя может потребовать выполнения определенных операций. К примеру, удаление пользователя, это не DELETE FROM. Просто помечается, что пользователь больше не может входить в систему, часть информации удаляется (например личные почтовые ящики вместе с сообщениями), но основная идентифицирующая часть остается. Дело в том, что ведется журнал, и может возникнуть вопрос, "кто менял этот документ три года назад" и тогда нужно получить информацию по пользователю, даже если он пару лет назад уволился и с тех пор доступа в систему не имеет. Возможности перехватить операцию встроенной системы безопасности Cache по созданию/удалению/и т.д. пользователей и выполнить какие-то собственные действия не имеется. Раньше (в Cache 5.0) было можно перехватить логин к ODBC, выполнить собственные проверки и даже заменить имя пользователя. В частности, это давало возможность при подключении пользователя задавать логин и пароль не тот, что указан в SQL-менеджере, а тот, что указан в моем приложении. После проверки пароля, моя функция заменяет имя на _SYSTEM (или любое другое) и с точки зрения Cache пользователь выглядит, как _SYSTEM и для него используются гранты, заданные для _SYSTEM, а с точки зрения моего приложения он выглядит как мой пользователь. То есть, можно было задействовать как встроенную систему безопасности SQL так и мою логику, сочетая их возможности. Сейчас (Cache 5.2) возможность переопределения функции логина пропала. См. пункт 1. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2007, 04:56 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Hi! VadimF В Cache' 2007.1. будет еще разграничение доступа к таблице на уровне записей. Угу. И сильно подозреваю, что по своим возможностям не дотянет до того, что я сделал еще 6 лет назад. Учитывая, что логика разграничения доступа сильно зависит от специфики приложения, а реализовать ее на триггерах - раз плюнуть. Допустим, есть у нас дерево папок. То есть в таблице имеется поле Parent с внешним ключем родительской папки. Перенос папки из одной родительской в другую с точки зрения сервера это UPDATE на запись переносимой папки с изменением Parent. А вот с точки зрения юзера переносимая папка не меняется, зато производится удаление из старой родительской и вставка в новую родительскую. Юзер не оперирует терминами SQL - операций. Ему надо не только право на изменение атрибутов и удаление папки, но и отдельно право на создание/удаление в ней дочерних подпапок. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2007, 04:56 |
|
Доступ!
|
|||
---|---|---|---|
#18+
krvsaА я что-то не очень доверяю сессиям... :( Т.к. они "исчезают" через некоторый таймаут... некий тайм аут можно изменить, я у себя поставил 28000 секунд и красота наступила. а сессию закрывать при наступлении события onunload на страничке. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2007, 22:34 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Дмитрий, не могу сейчас, к сожалению, подробно ответить на Ваше сообщение. Отмечу только один момент: Dmitry V. Liseev 3. Вопрос, тесно связанный с предыдущим пунктом, это невозможность бэкапа информации по пользователям, их правам доступа к данным вместе с самими данными конкретной базы. И соответственно, востановления из бэкапа так, чтобы это не повляло на пользователей, других приложений, которые крутятся на этом сервере. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
С уважением, Вадим ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2007, 00:21 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Блок А.Н. для ресурса в каше 5можно проверить, доступен ли он $System.Security.Check А как это сделать для таблицы?Спустя 11 лет задаю тот же вопрос: можно ли проверить разрешения пользователя для таблицы? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 12:57 |
|
Доступ!
|
|||
---|---|---|---|
#18+
Блок А.Н.Блок А.Н. для ресурса в каше 5можно проверить, доступен ли он $System.Security.Check А как это сделать для таблицы?Спустя 11 лет задаю тот же вопрос: можно ли проверить разрешения пользователя для таблицы?Можешь уточнить, какие разрешения для таблицы? В какой момент, и для кого нужно проверять разрешения? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 13:00 |
|
Доступ!
|
|||
---|---|---|---|
#18+
DAiMor, например, разрешения на вставку или удаление строк в некоторую таблицу. Я понимаю, что там все может быть гораздо тоньше, но мне достаточно этого. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 13:39 |
|
Доступ!
|
|||
---|---|---|---|
#18+
$system.SQL.CheckPriv() Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 15:46 |
|
Доступ!
|
|||
---|---|---|---|
#18+
DAiMor, На этот раз, хотя я делаю это не на Каше 5, а аж на 2010.2, в которой эти возможности уже должны быть, удача оказалась не на моей стороне. Сервер собран с какой-то странной версией класса %SYSTEM.SQL, в которой этих методов нет. Попробовал всех перехитрить и посмотреть, как компилируется EmbeddedSQL, но оказалось, что ESQL не использует безопасность. Но буду иметь в виду, спасибо :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2018, 21:19 |
|
|
start [/forum/topic.php?all=1&fid=39&tid=1556273]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
others: | 277ms |
total: | 425ms |
0 / 0 |