• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Надо как то "скрыть" БД, посоветуйте

  • Автор темы Автор темы Sandro
  • Дата начала Дата начала
S

Sandro

Ситуация следующая:
Начал разрабатывать БД, опыта 0, создал роли, ограничил права пользователям на формы , представления, пункты меню, тут возникла необходимость разместить базу на нескольких серверах (филиалах). Всё реплицируется, всё хорошо, но вот при желании , любой пользователь может базу скопировать локально и посмотреть всю информацию, как вариант убрать дизайн из базы, но тогда , на сколько я понимаю код уже не исправить, как поступают в таких случаях, можно ли как нить настроить , что б структура сохранялась на моём сервере и реплицировалась на другие сервера , на которых структура скрыта. Как это по науке делается, подскажите в каком направлении копать ?
 
Sandro
Создаёте шаблон БД, доступный только Вам. Создаёте рабочую базу, доступную пользователям, на которую накатываете дизайн из шаблона с включенной галкой сокрытия дизайна.

Все изменения в дизайн вносите в шаблон, после отладки изменений перенакатываете дизайн на рабочую базу, не забыв взвести вышеупомянутую галку.
 
и ещё код LS вынести в библиотеки (внешние)
 
Спасиб, общее направление понятно, буду думать.
 
По Вашему описанию пользователи локально себе базы для работы не копируют?
Так и запретите им копирование сняв соответствующую галку в доступе "Репликация или копирование документов"
 
Ну с пользователями то понятно, но есть ещё администраторы на "местах", которые базу реплицируют, но при этом им совсем не обязательно видеть информацию из других филиалов. Вот такая вот политика партии.
 
Ну с пользователями то понятно, но есть ещё администраторы на "местах", которые базу реплицируют, но при этом им совсем не обязательно видеть информацию из других филиалов. Вот такая вот политика партии.
Так нужно скрыть дизайн или данные? Если данные, то для этого есть readers-поля. Прописываете туда помимо пользователей центральный сервер и сервер филиала — документы на другой филиальный сервер не попадут. Или мудрить с формулами репликации.
Что касается ACL, то не имея медеджерских прав на базу её можно править только серверным агентом, имеющим соответствующие права. Т.о. создаёте документ-запрос с информацией, кому какие права дать, вызываете серверный агент с NoteID этого документа, агент вносит соответствующие изменения в ACL. Список ролей вывести можно, но, кмк, не нужно, лучше вывести список "человеческих" ролей, а кодом уже преобразовывать в роли и полномочия ACL.

Добавлено:
Так и запретите им копирование сняв соответствующую галку в доступе "Репликация или копирование документов"
Это запретит также и печать документов, а также копирование информации из документов в буфер обмена. Причём документы, созданные/редактированные "ущербными" пользователями получают служебное поле $KeepPrivate, запрещающее копирование документа всем, включая менеджера с полными правами.
 
Добавлю к ACL в последней закладки поставить галочку напротив
Enforce a consistent Access Controll List across all replicas

ну и плюс ридерс поля - что вижу то и реплицирую.
 
Начал разрабатывать БД, опыта 0
смысл дизайн прятать, боишься засмеют?
с хайдинговым дизайном часто траблы на личных папках происходят, а новички как раз любят папки создавать и на них подвязыватсья
 
Добавлено:
Это запретит также и печать документов, а также копирование информации из документов в буфер обмена. Причём документы, созданные/редактированные "ущербными" пользователями получают служебное поле $KeepPrivate, запрещающее копирование документа всем, включая менеджера с полными правами.
[/quote]

То есть $KeepPrivate документ не будет реплицироваться ??? И будет только доступен в БД к которой подключен пользователь ?
 
так-с сообщения потёр

ещё чучуть флуда не по теме - и топик будет закрыт, нарушителям - по гарчишнику
 
Так нужно скрыть дизайн или данные? Если данные, то для этого есть readers-поля. Прописываете туда помимо пользователей центральный сервер и сервер филиала — документы на другой филиальный сервер не попадут. Или мудрить с формулами репликации.
Что касается ACL, то не имея медеджерских прав на базу её можно править только серверным агентом, имеющим соответствующие права. Т.о. создаёте документ-запрос с информацией, кому какие права дать, вызываете серверный агент с NoteID этого документа, агент вносит соответствующие изменения в ACL. Список ролей вывести можно, но, кмк, не нужно, лучше вывести список "человеческих" ролей, а кодом уже преобразовывать в роли и полномочия ACL.

Добавлено:
Это запретит также и печать документов, а также копирование информации из документов в буфер обмена. Причём документы, созданные/редактированные "ущербными" пользователями получают служебное поле $KeepPrivate, запрещающее копирование документа всем, включая менеджера с полными правами.


То есть $KeepPrivate документ не будет реплицироваться ??? И будет только доступен в БД к которой подключен пользователь ?
 
То есть $KeepPrivate документ не будет реплицироваться ??? И будет только доступен в БД к которой подключен пользователь ?
Если мне не изменяет склероз, реплицироваться такой документ будет (разумеется, сервером или пользователем, имеющим право на репликацию), а вот вытянуть из него информацию через уи, кроме как принтскрином не получится, пока поле $KeepPrivate не будет удалено.
 
То есть $KeepPrivate документ не будет реплицироваться ??? И будет только доступен в БД к которой подключен пользователь ?

репликация и копирование документа - это разные вещи. $KeepPrivate - отвечает за копирование документа любым способом, изменение его или печать или пересылку через интерфейс пользователя. На репликацию это не влияет.
 
:) Ладно , будем тренироваться на кошках))) Я так понимаю, значение поля агентиком поменять то можно будет мне ?
 
;) Ладно , будем тренироваться на кошках))) Я так понимаю, значение поля агентиком поменять то можно будет мне ?

Кошки сказали, фиг вам , а не репликация, пользователь создающий документ без прав к репликации и копирования, метит поле $KeepPrivate=1 и он не реплицируется.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab