Шаг 184 - Свойство Permissions.

Описание
Задает или возвращает значение, устанавливающее разрешения для пользователя или группы, определяемых свойством UserName объекта Container или Document (только в рабочей области Microsoft Jet).

Значение
Задаваемое или возвращаемое значение является константой типа Long, определяющей разрешения. Ниже перечислены допустимые константы, определяющие значения свойства Permissions различных объектов доступа к данным. Если не указано иное, все константы, приведенные в таблицах, являются допустимыми для объектов Document.
В следующей таблице перечислены допустимые значения для объектов Container, отличных от таблиц и баз данных.

dbSecNoAccess		Пользователь не имеет доступа к объекту (неприменимо к объектам Document).
dbSecFullAccess		Пользователь имеет полный доступ к объекту.
dbSecDelete		Пользователь может удалить объект.
dbSecReadSec		Пользователь может прочитать сведения о защите объекта.
dbSecWriteSec		Пользователь может изменить разрешения на доступ.
dbSecWriteOwner		Пользователь может изменить значение свойства Owner.

В следующей таблице перечислены задаваемые и возвращаемые значения для контейнеров, являющихся таблицами.

dbSecCreate		Пользователь может создавать новые документы (неприменимо к 
			объектам Document).
dbSecReadDef		Пользователь может читать описание таблицы, включая сведения 
			о столбцах и индексах.
dbSecWriteDef		Пользователь может изменять или удалять описание таблицы, включая 
			сведения о столбцах и индексах.
dbSecRetrieveData		Пользователь может загружать данные из объекта Document.
dbSecInsertData		Пользователь может добавлять записи.
dbSecReplaceData		Пользователь может изменять записи.
dbSecDeleteData		Пользователь может удалять записи.

В следующей таблице перечислены задаваемые и возвращаемые значения для контейнеров, являющихся базами данных.

dbSecDBAdmin		Пользователь может выполнять репликацию базы данных и изменять пароль 
			базы данных (неприменимо к объектам Document).
dbSecDBCreate		Пользователь может создавать новые базы данных.  Данный параметр 
			применим только для контейнера Databases, входящего в системную базу данных 
			(Systen.mdw).  Эта константа неприменима к объектам Document.
dbSecDBExclusive		Пользователь имеет монопольный доступ к базе данных.
dbSecDBOpen		Пользователь может открывать базу данных.

Замечания
Данное свойство применяется для указания или проверки разрешений на чтение/запись, которые пользователь имеет для объектов Container или Document.
Объект Document наследует разрешения, определенные в его объекте Container, если в свойстве Inherit объекта Container указаны пользователи или группы, к которым принадлежат пользователи. В дальнейшем можно усовершенствовать управление объектом Document, задавая для него значения свойств Permissions и UserName.
Если требуется задать или возвратить все разрешения, имеющиеся у пользователя, включая унаследованные от групп, к которым он принадлежит, следует использовать свойство AllPermissions.

Пример
Следующая программа использует свойства SystemDB, AllPermissions и Permissions для демонстрации получения пользователями различных разрешений в зависимости от группы, к которой они принадлежат.

Sub AllPermissionsX()

	' Проверяет, что файл системной базы данных Microsoft Jet
	' является доступным.
	DBEngine.SystemDB = "system.mdw"
	Dim dbsNorthwind As Database
	Dim ctrLoop As Container

	Set dbsNorthwind = OpenDatabase("Борей.mdb")

	' Отображает семейство Containers и печатает имя текущего 
	' пользователя и присвоенные ему разрешения.
	For Each ctrLoop In dbsNorthwind.Containers

	With ctrLoop
			Debug.Print "Контейнер: " & .Name
			Debug.Print "Пользователь: " & .UserName
			Debug.Print "    Permissions: " & .Permissions
			Debug.Print "    AllPermissions: " & .AllPermissions
		End With
	Next ctrLoop
	dbsNorthwind.Close

End Sub
Hosted by uCoz