Интерактивное добавление 1с что это

Обновлено: 08.07.2024

Права доступа в 1С:Предприятии 8

В 1С:Предприятии различают два типа прав – основные и интерактивные.

Основные (неинтерактивные) – проверяются всегда независимо от способа обращения к объектам информационной базы.

Интерактивные – проверяются при выполнении интерактивных операций (например, операция "Установить пометку удаления").

Нужно учитывать, что проверку интерактивных прав можно обойти, создав, например, при конфигурировании форму самостоятельно и заменив стандартные команды своими, а проверку неинтерактивных прав нельзя обойти ни при каких обстоятельствах. Неинтерактивными правами защищается характерная для объекта фундаментальная функциональность, за это отвечают, например, такие права, как: "Добавление", "Чтение", "Изменение", "Удаление".

Для построения защищенных прикладных решений достаточно управлять только 4-мя основными правами доступа - "Добавление" , "Чтение", "Изменение" и "Удаление".

Система 1С:Предприятие допускает проверку прав из встроенного языка. Например при добавлении команд к формам разработчик должен дополнительно позаботиться о проверке соответствующих интерактивных прав.

Пример проверки прав из языка:

При этом нужно помнить о том, что у будущего пользователя конфигурации соответствующие интерактивные и неинтерактивные права к тому или иному объекту могут различаться. Например, может быть разрешено право на "Удаление" и запрещено право "Интерактивное удаление".

Рассмотрим проверку прав расширениями формы, табличного поля и поля ввода на примере документа:

  • При открытии формы документа проверяется право "Просмотр", после чего, если это форма нового объекта, то проверяется право "ИнтерактивноеДобавление", а если нет - право "Редактирование". Если выполняется запись с проведением, то проверяются права "ИнтерактивноеПроведение", "ИнтерактивнаяОтменаПроведения" или "ИнтерактивноеПроведениеНеОперативное", в зависимости от режима записи.
  • Расширение табличного поля для журнала документов при открытии формы, в которой журнал установлен основным реквизитом, проверяет, что право "Просмотр" установлено хотя бы у одного документа журнала. При проведении документов из журнала проверяются права "ИнтерактивнаяОтменаПроведения", "ИнтерактивноеПроведение" и "ИнтерактивноеПроведениеНеОперативное". При удалении документов проверяется право "ИнтерактивноеУдаление", а при установке/снятии пометки на удаление проверяются права "ИнтерактивнаяПометкаУдаления" и "ИнтерактивноеСнятиеПометкиУдаления". При добавлении нового документа, после выбора его типа, расширение табличного поля журнала документов проверяет право "ИнтерактивноеДобавление".
  • Поле ввода для документа проверяет только право "ВводПоСтроке".

Связанные права

Часть прав в системе 1С:Предприятия связаны друг с другом. Это означает, что основные права доступа, такие как "Чтение", "Изменение", "Добавление" и "Удаление" и некоторые другие могут влиять на права, отвечающие за такие операции с объектом, которые, в конечном счете, приведут к простейшим операциям. Например, нельзя разрешить право "Изменение", не выдав право "Чтение".

Интерактивные права напрямую зависят от их неинтерактивных аналогов, т.е. право "Интерактивное удаление" зависит от права "Удаление". На практике при конфигурировании это выглядит так, что при разрешении интерактивных прав аналогичные им неинтерактивные будут автоматически разрешены, и, наоборот, при снятии неинтерактивных прав соответствующие им интерактивные автоматически будут сброшены. Допускается лишь установка неинтерактивного права и сброс интерактивного, но не наоборот. Например, нельзя разрешить интерактивное право "Интерактивное удаление" и запретить неинтерактивное "Удаление".

Зависимость прав может выстраиваться в сложные цепочки, например, у объекта "Документ" право "Интерактивная отмена проведения" зависит от прав "Отмена проведения" и "Просмотр" одновременно, где первое зависит от "Изменение", которое, в свою очередь, зависит от права "Чтение" (см. рисунок).

Ключевым является право "Чтение", при его отсутствии автоматически пропадают любые другие права на доступ к объекту.

Интерактивные - по сути, это интерфейсные права из формы списка (или формы элемента). Т.е. запретили интерактивное добавление - всё, из формы списка добавить нельзя элемент. Но обработкой, к примеру - пожалуйста.

Я бы выделял два типа прав - права на форму и права на объект. Опишу своими словами, если что не так, коллеги поправят :)

Права на объект.
Это ограничения, которые накладываются на сам объект в базе данных во время его изменения (создание, изменение, удаление) или чтения именно в физической таблице.
Пример:
- создаём элемент справочника,
- читаем элемент справочника,
- перезаписываем элемент справочника,
- удаляем его,
- используя обработку, неявно изменяем элемент справочника
- используя документ, неявно изменяем элемент справочника.

Во всех этих случаях идет проверка на ограничения на уровне объекта. Можно еще привести пример, если бы мы написали какой-нить код в модуле объекта в соответствующих процедурах (ПередЗаписью, ПередУдалением), то получили бы как раз ограничения на уровне объекта. Ну, кроме чтения.

Именно на этих принципах построена, в целом, работа ролей (в неинтерактивной их части).

Права на форму (интерфейс).
Это все т.н. интерактивные права, плюс права типа "просмотр", "редактирование" и т.п. В 1С на уровне платформы они полноценно реализованы только в управляемом приложении в 8.2 я так понимаю. В 8.1 - это такая недореализация наверно, поскольку, к примеру, убрать видимость элементов управления форм мы не можем, вообще на элементы формы мы повлиять не можем.

Подобный функционал многие реализуют уже непосредственно в конфигурациях. К примеру, регистр, туда заносим все элементы нужных форм и при их открытии проверяем - такие-то элементы выключить, такие-то вообще скрыть, такие-то поля редактировать не давать и пр. и пр.

[В моей рабочей базе примерно так и сделано :) ]

Про запросы и РЛС.
Платформа 1С даёт возможность влиять на ограничения на уровне объектов через запросы. Т.е., скажем, запрещать редактировать не всех контрагентов, а только по какому-нить признаку. И это ограничение будет работать абсолютно из всех мест базы и для любых способов. Это как раз и есть РЛС, работает механизм именно на объектном уровне. Аналогично и на чтение, и на удаление, и на добавление.

Простой способ отличить объектные права от интерфейсных - возможность написать ограничение РЛС.

Еще интересный пример - в своё время во вКонтакте профиль человека был заблокирован для просмотра, но по прямой ссылке иногда галереи фото были доступны. Т.е. ограничения на уровне интерфейса есть, а на уровне объекта - нет :).

Права доступа в 1С:Предприятии 8

В 1С:Предприятии различают два типа прав – основные и интерактивные.

Основные (неинтерактивные) – проверяются всегда независимо от способа обращения к объектам информационной базы.

Интерактивные – проверяются при выполнении интерактивных операций (например, операция "Установить пометку удаления").

Нужно учитывать, что проверку интерактивных прав можно обойти, создав, например, при конфигурировании форму самостоятельно и заменив стандартные команды своими, а проверку неинтерактивных прав нельзя обойти ни при каких обстоятельствах. Неинтерактивными правами защищается характерная для объекта фундаментальная функциональность, за это отвечают, например, такие права, как: "Добавление", "Чтение", "Изменение", "Удаление".

Для построения защищенных прикладных решений достаточно управлять только 4-мя основными правами доступа - "Добавление" , "Чтение", "Изменение" и "Удаление".

Система 1С:Предприятие допускает проверку прав из встроенного языка. Например при добавлении команд к формам разработчик должен дополнительно позаботиться о проверке соответствующих интерактивных прав.

Пример проверки прав из языка:

При этом нужно помнить о том, что у будущего пользователя конфигурации соответствующие интерактивные и неинтерактивные права к тому или иному объекту могут различаться. Например, может быть разрешено право на "Удаление" и запрещено право "Интерактивное удаление".

Рассмотрим проверку прав расширениями формы, табличного поля и поля ввода на примере документа:

  • При открытии формы документа проверяется право "Просмотр", после чего, если это форма нового объекта, то проверяется право "ИнтерактивноеДобавление", а если нет - право "Редактирование". Если выполняется запись с проведением, то проверяются права "ИнтерактивноеПроведение", "ИнтерактивнаяОтменаПроведения" или "ИнтерактивноеПроведениеНеОперативное", в зависимости от режима записи.
  • Расширение табличного поля для журнала документов при открытии формы, в которой журнал установлен основным реквизитом, проверяет, что право "Просмотр" установлено хотя бы у одного документа журнала. При проведении документов из журнала проверяются права "ИнтерактивнаяОтменаПроведения", "ИнтерактивноеПроведение" и "ИнтерактивноеПроведениеНеОперативное". При удалении документов проверяется право "ИнтерактивноеУдаление", а при установке/снятии пометки на удаление проверяются права "ИнтерактивнаяПометкаУдаления" и "ИнтерактивноеСнятиеПометкиУдаления". При добавлении нового документа, после выбора его типа, расширение табличного поля журнала документов проверяет право "ИнтерактивноеДобавление".
  • Поле ввода для документа проверяет только право "ВводПоСтроке".

Связанные права

Часть прав в системе 1С:Предприятия связаны друг с другом. Это означает, что основные права доступа, такие как "Чтение", "Изменение", "Добавление" и "Удаление" и некоторые другие могут влиять на права, отвечающие за такие операции с объектом, которые, в конечном счете, приведут к простейшим операциям. Например, нельзя разрешить право "Изменение", не выдав право "Чтение".

Интерактивные права напрямую зависят от их неинтерактивных аналогов, т.е. право "Интерактивное удаление" зависит от права "Удаление". На практике при конфигурировании это выглядит так, что при разрешении интерактивных прав аналогичные им неинтерактивные будут автоматически разрешены, и, наоборот, при снятии неинтерактивных прав соответствующие им интерактивные автоматически будут сброшены. Допускается лишь установка неинтерактивного права и сброс интерактивного, но не наоборот. Например, нельзя разрешить интерактивное право "Интерактивное удаление" и запретить неинтерактивное "Удаление".

Зависимость прав может выстраиваться в сложные цепочки, например, у объекта "Документ" право "Интерактивная отмена проведения" зависит от прав "Отмена проведения" и "Просмотр" одновременно, где первое зависит от "Изменение", которое, в свою очередь, зависит от права "Чтение" (см. рисунок).

Ключевым является право "Чтение", при его отсутствии автоматически пропадают любые другие права на доступ к объекту.


Аутентификация — это подтверждение, что пользователь действительно тот за кого себя выдает.

Средствами платформы аутентификация выполняется через проверку пароля пользователя.

Для включения аутентификации средствами платформы нужно в настройках пользователя установить флаг Аутентификация 1С:Предприятия:

Аутентификация 1С:Предприятия

Ниже можно указать пароль пользователя. Тогда для входа в программу нужно ввести логин и пароль:

Аутентификация 1С:Предприятия

Если у пользователя снят флаг Аутентификация 1С:Предприятия, то он не будет отображаться в списке выбора пользователей.

Аутентификация операционной системы

Аутентификация операционной системы работает только для Windows. Но если подключение выполняется через веб-сервер Apache, то аутентификация операционной системы не будет работать.

В настройках пользователя нужно установить флаг Аутентификация операционной системы и выбрать одного из пользователей операционной системы:

Аутентификация операционной системы

При запуске платформа запросит имя пользователя у операционной системы, затем проверит есть ли в списке пользователей 1С пользователь, у которого указана аутентификация операционной системы и указан текущий пользователь ОС. Если такой пользователь 1С есть, то программа будет запущена под ним без запроса логина и пароля. Если нет такого пользователя, то будет выведен стандартный диалог ввода логина и пароля (если установлен флаг Аутентификация 1С:Предприятия).

Аутентификация операционной системы

Для одного пользователя может быть одновременно включена и аутентификация средствами операционной системы и аутентификация 1С:Предприятия.

OpenID-аутентификация

OpenID-аутентификация позволяет использовать для аутентификации в 1С внешний OpenID-провайдер. OpenID-провайдером может быть как база на платформе 1С, так и внешняя система, которая реализует работу по протоколу OpenID Authentication 2.0 и расширение этого протокола, реализованное в платформе 1С.

Преимущество данной аутентификации в том, что один провайдер может использоваться для аутентификации в нескольких базах 1С. Достаточно аутентифицироваться в одной базе, чтобы в другие входить без ввода логина и пароля.

Алгоритм аутентификации через OpenID выглядит следующим образом:

Сначала опубликуем на веб-сервере OpenID-провайдер. Это будет база 1С с пустой конфигурацией:

OpenID-провайдер

Чтобы данную базу можно было использовать как OpenID-провайдер нужно на закладке OpenID установить флаг Использовать в качестве OpenID-провайдера и указать Время жизни аутентификации в секундах. После истечения этого времени нужно будет снова ввести логин и пароль при входе в 1С.

Читайте также: