ユーザーの作成
- [アーティクル]
-
-
Active Directory Domain Servicesでユーザーを作成するには、ユーザーを配置するドメインのドメイン コンテナーにユーザー オブジェクトを作成します。 ユーザーは、ドメインのルート、組織部門内、またはコンテナ内に作成できます。
ユーザー オブジェクトを作成するときは、次の表に示す属性も設定して、Active Directory ドメイン サービスと Windows セキュリティ システムによって認識される正当なユーザーとしてオブジェクトを設定する必要があります。
他の属性を設定することもできます。 次のユーザー属性は、作成時に明示的に設定しない場合、デフォルト値で設定されます。
属性 |
説明 |
アカウント有効期限 |
アカウントの有効期限を指定します。 デフォルトは TIMEQ_FOREVER, これは、アカウントに有効期限がないことを示す。
|
|
セキュリティ記述子は、特定のルールに基づいて作成される。 詳しくは 新しいディレクトリオブジェクトへのセキュリティ記述子の設定方法.
|
objectCategory |
ユーザー・カテゴリーを指定します。 デフォルトは "Person "である。
|
name |
ユーザー名を指定します。 デフォルトはcn.
|
pwdLastSet |
ユーザーが最後にパスワードを設定した日時を指定します。 デフォルトはゼロで、これはユーザーが次回ログオン時にパスワードを変更しなければならないことを示す。
|
userAccountControl |
ユーザーのログオン機能とアカウント機能を決定する値が含まれます。 デフォルトでは、次のフラグが設定されています:
- UF_ACCOUNTDISABLE - アカウントは無効です。
- UF_PASSWD_NOTREQD - パスワードは必要ありません。
- - パスワードは必要ありません。
UF_NORMAL_ACCOUNT - 一般的なユーザーを表す既定のアカウントの種類。
|
memberOf |
ユーザーが直接メンバーであるグループを指定します。 デフォルトは"ドメインユーザー"です。
|
ユーザーは、目的のコンテナーにバインドし、次のいずれかの方法を使用して作成されます。 cn 属性と sAMAccountName 属性は、ユーザがサーバにコミットされる前に設定する必要があります。
cn と sAMAccountName 以外の属性を変更する前に、新しいユーザをサーバにコミットする必要があります。 これは、ユーザーがコミットされるまで、ユーザー アカウントが実際には存在しないためです。 サーバー上に存在しないオブジェクトの属性を取得または変更すると、エラーが発生します。 れには、 IADsUser.SetPassword メソッドの呼び出しが含まれます。 たとえば、IADsContainer.Create を使用してユーザーを作成する場合は、次のシーケンスに従います。
- IADsContainer.Create を呼び出して、指定した cn を持つユーザーをローカル キャッシュに作成します。
- IADs.Put メソッドを使用して、sAMAccountName 属性を目的の値に設定します。
- 次に、userAccountControl などの他の属性を変更します。 この制限は、 IADsUser.AccountDisabled などの ADSI プロパティや、 IADsUser.SetPassword などのメソッドにも適用されます。
- IADs.SetInfo を呼び出して、新しいユーザーをサーバーにコミットします。
新しいユーザー アカウントが作成されると、既定では無効になります。 アカウントは、手動またはプログラムで有効にする必要があります。 ユーザー アカウントをプログラムで有効にするには、userAccountControl 属性から ADS_UF_ACCOUNTDISABLE フラグを削除します。
新しいユーザー アカウントが作成されると、そのアカウントの userAccountControl 属性に、アカウントにパスワードが不要であることを示す UF_PASSWD_NOTREQD フラグが自動的に設定されます。 アカウントが作成されたドメインのセキュリティ ポリシーで、すべてのユーザー アカウントのパスワードが必要な場合は、アカウントの userAccountControl 属性から UF_PASSWD_NOTREQD フラグを削除する必要があります。
-
ユーザーを作成するためのコード例