Описание
Изменяет пароль существующей учетной записи пользователя или базы данных с ядром Microsoft Jet (только в рабочей области ядра Microsoft Jet).
объект.NewPassword старыйПароль, новыйПароль
Параметры
объект
Объектная переменная, представляющая объект User или объект Database версии Microsoft Jet 3.x, для которого изменяется значение свойства Password.
старыйПароль
Выражение или переменная типа String, представляющая текущее значение свойства Password объекта User или объекта Database версии Jet 3.x.
новыйПароль
Выражение или переменная типа String, представляющая новое значение свойства Password объекта User или объекта Database версии Jet 3.x.
Замечания
Строки старыйПароль и новыйПароль могут содержать до 14 символов и включать любые символы, за исключением пустого символа ASCII 0. Для удаления пароля следует указать пустую строку ("") в аргументе новыйПароль.
Пароли задаются с учетом регистра.
Если в аргументе объект указано имя объекта User, не являющегося компонентом семейства Users, возникает ошибка. Для того чтобы задать новый пароль, необходимо либо войти в систему под именем пользователя, учетную запись которого требуется изменить, либо принадлежать к группе "Admins" (администраторы). Свойство Password объекта User доступно только для чтения при этом сами пользователи не могут считывать текущее значение.
Если в аргументе объект указано имя объекта Database версии Microsoft Jet 3.0 или более поздней, данный метод допускает ограниченную форму защиты данных в виде парольной защиты. При создании или открытии файла .mdb версии Microsoft Jet 3.x часть строки подключения Connect может описывать пароль.
Если база данных не имеет определенного пароля, то ядро Microsoft Jet автоматически создает пароль, передавая пустую строку ("") в качестве старого пароля.
Пользователь, потерявший или забывший пароль, не сможет открыть базу данных.
Пример
Следующая программа приглашает ввести новый пароль для пользователя Иван Иванов. Если введена строка длиной от 1 до 14 символов, вызывается метод NewPassword для изменения пароля. Пользователь должен войти в систему как Иван Иванов или как член группы "Admins".
Sub NewPasswordX() Dim wrkDefault As Workspace Dim usrNew As User Dim grpNew As Group Dim grpMember As Group Dim strPassword As String ' Определяет стандартную рабочую область. Set wrkDefault = DBEngine.Workspaces(0) With wrkDefault ' Создает и добавляет нового пользователя. Set usrNew = .CreateUser("Иван Иванов", "abc123DEF456", "Пароль1") .Users.Append usrNew ' Создает и добавляет новую группу. Set grpNew = .CreateGroup("Счетоводы", "UVW987xyz654") .Groups.Append grpNew ' Делает нового пользователя членом новой группы. Set grpMember = usrNew.CreateGroup("Счетоводы") usrNew.Groups.Append grpMember ' Приглашает ввести новый пароль. Если введена ' слишком длинная строка, приглашает повторить. Do While True strPassword = InputBox("Введите новый пароль:") Select Case Len(strPassword) Case 1 To 14 usrNew.NewPassword "Пароль1", strPassword MsgBox "Пароль изменен!" Exit Do Case Is > 14 MsgBox "Слишком длинный пароль!" Case 0 Exit Do End Select Loop ' Удаляет новые объекты User и Group, ' созданные только для демонстрации. .Users.Delete "Иван Иванов" .Groups.Delete "Счетоводы" End With End Sub