Coder Social home page Coder Social logo

Добавить возможность к каждой конфигурации ограничить доступ пользователям about tasks HOT 19 OPEN

blizd avatar blizd commented on August 19, 2024
Добавить возможность к каждой конфигурации ограничить доступ пользователям

from tasks.

Comments (19)

BlizD avatar BlizD commented on August 19, 2024 1

По поводу отдельного справочника "Проекты" - пока все таки против него.
Вместо него необходимо использовать термин "Основная задача". То есть основная задача (проект) и в него входят другие подчиненные задачи.
Что касается RLS и проверки прав доступа, то в целом не против.

from tasks.

BlizD avatar BlizD commented on August 19, 2024

@Dimanchik00
Добрый день.

При ведении в базе нескольких проектов (конфигураций)

Речь идет об отдельных ветках в справочнике "Задачи"?
Вот так?

  • Проект №1
    -- Задача 34
    -- Задача 56
  • Проект №17
    -- Задача 23
    -- Задача 35

Необходим отдельный доступ к "Проекту №1" и к "Проекту №2"?

from tasks.

Dimanchik00 avatar Dimanchik00 commented on August 19, 2024

Можно и так. Тогда надо иметь возможность давать доступ к Проект№1 списку пользователей. И не показывать тем кого там нет. Имелся в виду следующий сценарий. У задачи есть реквизит конфигурация. К каждой записи справочника конфигурация давать доступ определенному списку пользователей (участникам проекта). Тогда обязательно заполнение этого реквизита в задачах. Кстати, при создании новой задачи родитель указывается, а конфигурация автоматически из родителя не подставляется.

from tasks.

BlizD avatar BlizD commented on August 19, 2024

Понятно, надо подумать как это реализовать.
Не хотелось бы реализовывать это через RLS.

from tasks.

BlizD avatar BlizD commented on August 19, 2024

@Dimanchik00
Подскажи, насколько это важно, разделять такую видимость?
Там есть информация, которую нельзя видеть другим пользователям?

from tasks.

Dimanchik00 avatar Dimanchik00 commented on August 19, 2024

Да, если вести проекты по разработке в одной компании в одной базе. Команд может быть несколько и конфиденциальность однозначно нужна.

from tasks.

BlizD avatar BlizD commented on August 19, 2024

@Dimanchik00

Да, если вести проекты по разработке в одной компании в одной базе. Команд может быть несколько и конфиденциальность однозначно нужна.

А в Вашем случае уже есть такая потребность? или на будущее?

from tasks.

Dimanchik00 avatar Dimanchik00 commented on August 19, 2024

Почти. Первый большой проект туда портируем уже.

from tasks.

BlizD avatar BlizD commented on August 19, 2024

@Dimanchik00
Через RLS не хочу делать по нескольким причинам:

  • текущий код не предусмотрен для RLS, будут сыпаться ошибки из разных мест;
  • общее замедление системы из за добавления RLS;
  • большие трудозатраты;
  • нельзя кодировать постепенно, надо сразу все места проверить/исправить.

Как мне кажется если и делать, то через программную реализацию:

  • обеспечить видимость в формах списках, форма выбора, форме элемента для задач;
  • подправить канбан доску;
  • подправить отчет по задачам;

Надо понимать, что в этом случае у пользователя будет возможность через консоль запросов/произвольные отчет получить закрытую информацию для него.

from tasks.

JohnyDeath avatar JohnyDeath commented on August 19, 2024

А может добавить справочник "Проекты" и соответствующий реквизит в задачу?
По возможности вытащить его во все места (регистры, документы)
Замедления особо и не заметишь.
Трудозатраты будут связаны только с вытаскиванием проекта во все таблицы.
Сами запросы не долго делать, особенно если использовать шаблоны.

Но так будет правильно и архитектурно и в дальнейшем не будет приводить к головной боли при развитии функционала.

Мне, возможно, тоже такое понадобится. Есть несколько команд/проектов, которые друг о друге вообще ничего не знают. Более того, будет возможен доступ и заказчику, чтобы, например, посмотреть состояние дел.

UPDATE: Конфигурацию детально не знаю, поэтому сходу и предложил справочник "Проекты". Реквизит "Конфигурация" вроде бы и похож на нужное разделение, но не совсем то, что нужно. Все таки Проект <> Конфигурация

from tasks.

BlizD avatar BlizD commented on August 19, 2024

@JohnyDeath
там же есть еще объекты БСП не знаю как они себя поведут в связке с RLS?

from tasks.

JohnyDeath avatar JohnyDeath commented on August 19, 2024

@BlizD что например тебя смущает? Какие именно объекты?
Доступ к которым не надо ограничивать и не будут в РЛС участвовать

from tasks.

BlizD avatar BlizD commented on August 19, 2024

@JohnyDeath
При настройке БСП, были определяемые типы, в которых указывал Задачу как тип.
Не знаю участвует ли задача в этом случае в каких то служебных регистрах.

from tasks.

BlizD avatar BlizD commented on August 19, 2024

@JohnyDeath

А может добавить справочник "Проекты" и соответствующий реквизит в задачу?
По возможности вытащить его во все места (регистры, документы)
Замедления особо и не заметишь.

Может лучше добавить какой то пространный реквизит типа: "Область видимости", "Группа доступа". Не всегда же именно проекты будут разделением.

from tasks.

JohnyDeath avatar JohnyDeath commented on August 19, 2024

Да, наверное стоит подумать над "областью видимости", а точнее "доступные проекты" для каждого пользователя. Но по факту разделителем все равно должен остаться Проект, как мне кажется.
В учетных системах такой реквизит - Организация. И некоторые пользователи имеют доступ к нескольким организациям

from tasks.

capitoshko avatar capitoshko commented on August 19, 2024

Давайте поднимем задачу ещё раз. Я склоняюсь к варианту отдельного справочника Проекты и RLS. Что скажете?

from tasks.

capitoshko avatar capitoshko commented on August 19, 2024

Использовать рлс на документ это как то не очень

from tasks.

BlizD avatar BlizD commented on August 19, 2024

Использовать рлс на документ это как то не очень

О каком документе говоришь?

from tasks.

capitoshko avatar capitoshko commented on August 19, 2024

Сори. Задача это справочник

from tasks.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.