IADsUser インターフェイス (iads.h)
IADsUser インターフェイスは、IAD から継承するデュアル インターフェイスです。 これは、ネットワーク上のエンド ユーザー アカウントを表し、管理するように設計されています。 このインターフェイスのメソッドを呼び出して、エンド ユーザー アカウント データにアクセスして操作します。 このようなデータには、ユーザーの名前、電話番号、役職などが含まれます。 このインターフェイスは、ユーザーのグループの関連付けを決定したり、パスワードを設定または変更したりするための機能をサポートします。
WinNT プロバイダーを使用してドメイン ユーザーにバインドするには、次のコード例に示すように、ドメイン名を ADsPath の一部として使用します。
GetObject("WinNT://MYDOMAIN/jeffsmith,user")
同様に、ADsPath の一部としてコンピューター名を使用して、ローカル ユーザーにバインドします。
GetObject("WinNT://MYCOMPUTER/jeffsmith,user")
Active Directory では、ドメイン ユーザーは ディレクトリに存在します。 次のコード例は、LDAP プロバイダーを介してドメイン ユーザーにバインドする方法を示しています。
GetObject("LDAP://CN=Jeff Smith,OU=Sales,DC=Fabrikam,DC=Com")
ただし、ローカル アカウントはローカル SAM データベースに存在し、LDAP プロバイダーはローカル データベースと通信しません。 したがって、ローカル ユーザーにバインドするには、2 番目のコード例で説明されているように WinNT プロバイダーを使用する必要があります。
継承
IADsUser インターフェイスは、IDispatch と IAD を継承します。 IADsUser には、次の種類のメンバーもあります。
メソッド
IADsUser インターフェイスには、これらのメソッドがあります。
IADsUser::ChangePassword 指定した古い値から新しい値にユーザー パスワードを変更します。 |
IADsUser::Groups このユーザーが属する ADSI グループ オブジェクトのコレクションを取得します。 |
IADsUser::SetPassword ユーザー パスワードを指定した値に設定します。 |
解説
他の ADSI オブジェクトと同様に、コンテナー オブジェクトは Windows ユーザー アカウント オブジェクトを作成します。 まず、コンテナー オブジェクトにバインドします。 次に、 IADsContainer::Create メソッドを 呼び出し、必須または省略可能な属性を指定します。
WinNT では、ユーザーの作成時に追加の属性を指定する必要はありません。 IADsContainer::Create メソッドを呼び出して、ユーザー オブジェクトを直接作成できます。
Dim dom As IADsContainer
Dim usr As IADsUser
On Error GoTo Cleanup
Set dom = GetObject("WinNT://MyDomain")
Set usr = dom.Create("user","jeffsmith")
usr.SetInfo
Cleanup:
If(Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number)
End If
Set mach = Nothing
Set usr = Nothing
この場合、ドメイン ユーザーは次の既定値で作成されます。
プロパティ | 値 |
---|---|
[名前] | SAM アカウント名 (jeffsmith など) |
パスワード | Empty |
ユーザーがパスワードを変更する必要がある | TRUE |
ユーザーがパスワードを変更できない | FALSE |
パスワードの有効期限なし | FALSE |
アカウントが無効 | FALSE |
グループ | Domain User |
プロファイル | Empty |
アカウントの有効期限なし | TRUE |
ローカル ユーザーを作成するには、次のコード例に示すように、ターゲット コンピューターにバインドします。
Dim mach As IADsContainer
Dim usr as IADsUser
On Error GoTo Cleanup
Set mach = GetObject("WinNT://MyMachine,Computer")
Set usr = mach.Create("user","jeffsmith")
usr.SetInfo
Cleanup:
If(Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number)
End If
Set mach = Nothing
Set usr = Nothing
新しく作成されたローカル ユーザーには、ドメイン ユーザーと同じ既定のプロパティがあります。 ただし、グループ メンバーシップは "ドメイン ユーザー" ではなく "ユーザー" になります。
要件
サポートされている最小のクライアント | Windows Vista |
サポートされている最小のサーバー | Windows Server 2008 |
対象プラットフォーム | Windows |
ヘッダー | iads.h |