CreateUser Method and Password and PID Properties Example

This example uses the CreateUser method and Password and PID properties to create a new User object; it then makes the new User object a member of different Group objects and lists its properties and groups.

Sub CreateUserX()

    Dim wrkDefault As Workspace
    Dim usrNew As User
    Dim grpNew As Group
    Dim usrTemp As User
    Dim prpLoop As Property
    Dim grpLoop As Group

    Set wrkDefault = DBEngine.Workspaces(0)

    With wrkDefault

        ' Create and append new User.
        Set usrNew = .CreateUser("NewUser")
        usrNew.PID = "AAA123456789"
        usrNew.Password = "NewPassword"
        .Users.Append usrNew

        ' Create and append new Group.
        Set grpNew = .CreateGroup("NewGroup", _
            "AAA123456789")
        .Groups.Append grpNew

        ' Make the user "NewUser" a member of the
        ' group "NewGroup" by creating and adding the
        ' appropriate User object to the group's Users
        ' collection.
        Set usrTemp = _
            .Groups("NewGroup").CreateUser("NewUser")
        .Groups("NewGroup").Users.Append usrTemp

        Debug.Print "Properties of " & usrNew.Name

        ' Enumerate the Properties collection of NewUser. The 
        ' PID property is not readable.
        For Each prpLoop In usrNew.Properties
            On Error Resume Next
            If prpLoop <> "" Then Debug.Print "  " & _
                prpLoop.Name & " = " & prpLoop
            On Error GoTo 0
        Next prpLoop

        Debug.Print "Groups collection of " & usrNew.Name

        ' Enumerate the Groups collection of NewUser.
        For Each grpLoop In usrNew.Groups
            Debug.Print "  " & _
                grpLoop.Name
        Next grpLoop

        ' Delete the new User and Group objects because this
        ' is a demonstration.
        .Users.Delete "NewUser"
        .Groups.Delete "NewGroup"

    End With

End Sub