ユーザーアカウントを追加する方法
◆概要
この資料は、Microsoft Accessでユーザーアカウントを追加する方法について記載しています。
CreateUser、Appendメソッド
DAOでは、データベースに対する権限を持つユーザーアカウントを追加することができます。
ユーザーアカウントを追加するには、CreateUserメソッドで追加します。
書式:Set ユーザー変数=オブジェクト.ユーザー名 パーソナルID
パーソナルIDは、半角4文字以上20文字以下の英数字で指定します。
Function AddUser() Dim n_user as User ' ユーザーアカウントを作成する Set n_user=DBEngine.Workspaces(0).CreateUser("鈴木","suzuki") DBEngine.WOrkspaces(0).Users.Append n_user End Function
■Access ユーザーセキュリティ モデルにおいてユーザーアカウントを追加するには
次の例は、管理者「SuperAdmin」そのパスワード「ms1234」を前提に、Access ユーザーセキュリティ モデルにおいてユーザーアカウントを追加します。セキュリティ ウィザードを使ってあらかじめ、対象となるデータベースのグループ情報ファイルを作成し、管理者グループ、ユーザーグループから権限をすべて削除し、SuperAdminにはすべてのオブジェクトに管理者権限を与えておきます。
Sub btnAddUser_Click() Dim strNewUserName as String Dim strNewPass as String ' Bobというユーザーを追加します。パスワードは1234 strNewUserName="Bob" strNewPass="1234" ' 新しいManager用にユーザー アカウントを新規に作成します。 Call CUser(strNewUserName, "g1234", strNewPass, "Users") End sub Function CUser(uname As String, upin As String, upwd As String, _ gname As String) '=============================================================== ' 機能:新しいユーザーをユーザーグループに追加する ' 引数:第一引数はユーザー名、第二引数はSID ' 第三引数はパスワード、第4引数はグループ名 '=============================================================== Dim u As user, w As Workspace, g As Group ' 管理者の名前とパスワードを使って新しいワークスペースを作成し、 ' 新しいワークスペースでデータベースを開きます。一般ユーザーでは成功しない Set w = DBEngine.CreateWorkspace("NewWorkspace", _ "SuperAdmin", "ms1234") Set u = w.CreateUser(uname, upin, upwd) 'Create a user for the 'Access session. w.Users.Append u 'Add user to workspace. w.Users.Refresh Set g = w.Groups(gname) Set u = g.CreateUser(uname) ' グループに新しいユーザーを作成 g.Users.Append u ' 新しいユーザーをグループに追加 g.Users.Refresh ' Managersグループにユーザーを追加します。 ' 既にこのユーザーは、[ユーザーグループ]グループに追加されているので ' このアカウントのインスタンスを作成しなければ、ユーザー グループに追加することは ' できません。 Set g = w.Groups("Managers") ' Managersグループ Set u = g.CreateUser(uname) g.Users.Append u ' 新しいユーザーをグループに追加 g.Users.Refresh ' ワークスペースを閉じます。 w.Close End Function
▼ページトップに戻る