USER_INFO_2 構造体 (lmaccess.h)
USER_INFO_2構造体には、アカウント名、パスワード データ、特権レベル、ユーザーのホーム ディレクトリへのパス、その他のユーザー関連のネットワーク統計など、ユーザー アカウントに関する情報が含まれます。
構文
typedef struct _USER_INFO_2 {
LPWSTR usri2_name;
LPWSTR usri2_password;
DWORD usri2_password_age;
DWORD usri2_priv;
LPWSTR usri2_home_dir;
LPWSTR usri2_comment;
DWORD usri2_flags;
LPWSTR usri2_script_path;
DWORD usri2_auth_flags;
LPWSTR usri2_full_name;
LPWSTR usri2_usr_comment;
LPWSTR usri2_parms;
LPWSTR usri2_workstations;
DWORD usri2_last_logon;
DWORD usri2_last_logoff;
DWORD usri2_acct_expires;
DWORD usri2_max_storage;
DWORD usri2_units_per_week;
PBYTE usri2_logon_hours;
DWORD usri2_bad_pw_count;
DWORD usri2_num_logons;
LPWSTR usri2_logon_server;
DWORD usri2_country_code;
DWORD usri2_code_page;
} USER_INFO_2, *PUSER_INFO_2, *LPUSER_INFO_2;
メンバー
usri2_name
種類: LPWSTR
ユーザー アカウントの名前を指定する Unicode 文字列へのポインター。 NetUserSetInfo 関数の呼び出しでは、このメンバーは無視されます。 詳細については、「解説」を参照してください。
usri2_password
種類: LPWSTR
usri2_name メンバーによって識別されるユーザーのパスワードを指定する Unicode 文字列へのポインター。 長さは PWLEN バイトを超えることはできません。 NetUserEnum 関数と NetUserGetInfo 関数は、パスワードのセキュリティを維持するために NULL ポインターを返します。
慣例により、パスワードの長さはLM20_PWLEN文字に制限されます。
usri2_password_age
型: DWORD
usri2_password メンバーが最後に変更されてから経過した秒数。 NetUserAdd 関数と NetUserSetInfo 関数は、このメンバーを無視します。
usri2_priv
型: DWORD
usri2_name メンバーに割り当てられた特権のレベル。 NetUserAdd 関数を呼び出すには、このメンバーをUSER_PRIV_USERする必要があります。 NetUserSetInfo 関数の場合、このメンバーは NetUserGetInfo 関数または NetUserEnum 関数によって返される値である必要があります。 このメンバーには、次のいずれかの値を指定できます。 ユーザーとグループのアカウント権限の詳細については、「 特権」を参照してください。
値 | 意味 |
---|---|
|
ゲスト |
|
User |
|
管理者 |
usri2_home_dir
種類: LPWSTR
usri2_name メンバーによって指定されたユーザーのホーム ディレクトリのパスを指定する Unicode 文字列へのポインター。 文字列には NULL を指定できます。
usri2_comment
種類: LPWSTR
ユーザー アカウントに関連付けるコメントを含む Unicode 文字列へのポインター。 文字列には NULL 文字列を指定することも、終端の null 文字の前に任意の数の文字を指定することもできます。
usri2_flags
型: DWORD
このメンバーには、次の値の 1 つ以上を指定できます。
ユーザー アカウント制御フラグを設定するには、特定 の特権 と アクセス権の制御が必要になる場合があることに注意してください。 詳細については、 NetUserSetInfo 関数の「解説」セクションを参照してください。
値 | 意味 |
---|---|
|
実行されたログオン スクリプト。 この値は設定する必要があります。 |
|
ユーザーのアカウントが無効になっています。 |
|
ホーム ディレクトリが必要です。 この値は無視されます。 |
|
パスワードは必要ありません。 |
|
ユーザーはパスワードを変更できません。 |
|
アカウントは現在ロックアウトされています。 NetUserSetInfo 関数を呼び出してこの値をクリアし、以前にロックされたアカウントのロックを解除できます。 この値を使用して、以前にロック解除されたアカウントをロックすることはできません。 |
|
アカウントでパスワードの有効期限が切れることはありません。 |
|
ユーザーのパスワードは、Active Directory の元に戻せる暗号化の下に格納されます。 |
|
アカウントを "機密" としてマークします。他のユーザーは、このユーザー アカウントの代理人として機能できません。 |
|
ユーザーがスマート カードを使用してユーザー アカウントにログオンする必要があります。 |
|
キーに Data Encryption Standard (DES) 暗号化の種類のみを使用するようにこのプリンシパルを制限します。 |
|
このアカウントでは、ログオンに Kerberos 事前認証は必要ありません。 |
|
アカウントは委任に対して有効になっています。 これはセキュリティに依存する設定です。このオプションが有効になっているアカウントは厳密に制御する必要があります。 この設定により、アカウントで実行されているサービスは、クライアントの ID を想定し、そのユーザーとしてネットワーク上の他のリモート サーバーに対して認証できます。 |
|
ユーザーのパスワードの有効期限が切れています。
Windows 2000: この値はサポートされていません。 |
|
アカウントは、Kerberos セキュリティ パッケージの外部でユーザーを認証し、制約付き委任を通じてそのユーザーを委任するために信頼されます。 これはセキュリティに依存する設定です。このオプションが有効になっているアカウントは厳密に制御する必要があります。 この設定により、アカウントで実行されているサービスは、クライアントの ID をアサートし、そのユーザーとしてネットワーク上で特に構成されたサービスに対して認証を行うことができます。
Windows XP/2000: この値はサポートされていません。 |
次の値は、アカウントの種類を示しています。 設定できる値は 1 つだけです。 NetUserSetInfo 関数を使用してアカウントの種類を変更することはできません。
usri2_script_path
種類: LPWSTR
ユーザーのログオン スクリプト ファイルのパスを指定する Unicode 文字列へのポインター。 スクリプト ファイルには を指定できます。CMD ファイル、.EXE ファイル、または .BAT ファイル。 文字列は NULL にすることもできます。
usri2_auth_flags
型: DWORD
ユーザーのオペレーター特権。
NetUserGetInfo 関数と NetUserEnum 関数の呼び出しは、ユーザーのローカル グループ メンバーシップに基づいて値を返します。 ユーザーが Print Operators のメンバーである場合は、AF_OP_PRINTが設定されます。 ユーザーがサーバーオペレーターのメンバーである場合は、AF_OP_SERVERが設定されます。 ユーザーが Account Operators のメンバーである場合は、AF_OP_ACCOUNTSが設定されます。 AF_OP_COMMは設定されません。 ユーザーとグループのアカウント権限の詳細については、「 特権」を参照してください。
次の制限事項が適用されます。
- NetUserAdd 関数を呼び出す場合、このメンバーは 0 である必要があります。
- NetUserSetInfo 関数を呼び出す場合、このメンバーは、NetUserGetInfo または NetUserEnum の呼び出しから返される値である必要があります。
値 | 意味 |
---|---|
|
印刷オペレーター特権が有効になっています。 |
|
通信オペレーター特権が有効になっています。 |
|
サーバー オペレーター特権が有効になっています。 |
|
accounts オペレーター特権が有効になっています。 |
usri2_full_name
種類: LPWSTR
ユーザーの完全な名前を含む Unicode 文字列へのポインター。 この文字列には NULL 文字列を指定することも、終端の null 文字の前に任意の数の文字を指定することもできます。
usri2_usr_comment
種類: LPWSTR
ユーザー コメントを含む Unicode 文字列へのポインター。 この文字列には NULL 文字列を指定することも、終端の null 文字の前に任意の数の文字を指定することもできます。
usri2_parms
種類: LPWSTR
アプリケーションで使用するために予約されている Unicode 文字列へのポインター。 この文字列には NULL 文字列を指定することも、終端の null 文字の前に任意の数の文字を指定することもできます。 Microsoft 製品では、このメンバーを使用してユーザー構成情報を格納します。 この情報は変更しないでください。
usri2_workstations
種類: LPWSTR
重要
usri2_workstationsは使用しなくなりました。 代わりに、[ユーザー権利の割り当て] 設定を構成してワークステーションへのサインイン アクセスを制御できます (ローカルでのログオンを許可し、ローカルでのログオンを拒否するか、リモート デスクトップ サービスを使用してログオンを許可し、リモート デスクトップ サービスを使用してログオンを拒否します)。
ユーザーがログオンできるワークステーションの名前を含む Unicode 文字列へのポインター。 指定できるワークステーションは 8 台までです。名前はコンマで区切る必要があります。 NULL 文字列は、制限がないことを示します。 すべてのワークステーションからこのアカウントへのログオンを無効にするには、 usri2_flags メンバーの UF_ACCOUNTDISABLE値を設定します。
usri2_last_logon
型: DWORD
最後のログオンが発生した日時。 この値は、GMT 1970 年 1 月 1 日の 00:00:00 から経過した秒数として格納されます。 このメンバーは、 NetUserAdd 関数と NetUserSetInfo 関数では無視されます。
このメンバーは、ドメイン内の各バックアップ ドメイン コントローラー (BDC) で個別に管理されます。 正確な値を取得するには、ドメイン内の各 BDC に対してクエリを実行する必要があります。 最後のログオンは、取得された最大の値で示された時点で発生しました。
usri2_last_logoff
型: DWORD
このメンバーは現在使用されていません。
最後のログオフが発生した日時を示します。 この値は、GMT 1970 年 1 月 1 日の 00:00:00 から経過した秒数として格納されます。 値 0 は、最後のログオフ時刻が不明であることを示します。
このメンバーは、ドメイン内の各バックアップ ドメイン コントローラー (BDC) で個別に管理されます。 正確な値を取得するには、ドメイン内の各 BDC に対してクエリを実行する必要があります。 最後のログオフは、取得された最大の値で示された時点で発生しました。
usri2_acct_expires
型: DWORD
アカウントの有効期限が切れる日付と時刻。 この値は、GMT 1970 年 1 月 1 日の 00:00:00 以降に経過した秒数として格納されます。 TIMEQ_FOREVERの値は、アカウントの有効期限が切れないことを示します。
usri2_max_storage
型: DWORD
ユーザーが使用できるディスク領域の最大容量。 使用可能なすべてのディスク領域を使用するには、USER_MAXSTORAGE_UNLIMITEDを指定します。
usri2_units_per_week
型: DWORD
週を分割する等しい長さの時間単位の数。 この値は、 usri2_logon_hours メンバー内のビット文字列の長さを計算するために必要です。
この値は LAN Manager 2.0 にUNITS_PER_WEEKする必要があります。 この要素は、 NetUserAdd 関数と NetUserSetInfo 関数では無視されます。
サービス アプリケーションの場合、ユニットは、SAM_DAYS_PER_WEEK、SAM_HOURS_PER_WEEK、またはSAM_MINUTES_PER_WEEKのいずれかの値である必要があります。
usri2_logon_hours
種類: PBYTE
ユーザーがログオンできる時間を指定する 21 バイト (168 ビット) ビット文字列へのポインター。 各ビットは、グリニッジ標準時 (GMT) の週の一意の時間を表します。
最初のビット (ビット 0、単語 0) は日曜日の 0:00 から 0:59 です。2 番目のビット (ビット 1、単語 0) は日曜日の 1:00 から 1:59 です。などなど。 単語 0 のビット 0 は、GMT タイム ゾーンにいる場合にのみ、日曜日の 0:00 から 0:59 を表します。 それ以外の場合は、タイム ゾーン オフセットに従ってビットを調整する必要があります (たとえば、太平洋標準時の GMT から 8 時間を引いた場合)。
時間制限がないことを示すために NetUserAdd 関数を呼び出すときに、このメンバーに NULL ポインターを指定します。 NetUserSetInfo 関数を呼び出すときに NULL ポインターを指定して、ユーザーがログオンできる時間に変更を加えないことを示します。
usri2_bad_pw_count
型: DWORD
ユーザーが正しくないパスワードを使用してアカウントにログオンしようとした回数。 値 – 1 は、値が不明であることを示します。 NetUserAdd 関数と NetUserSetInfo 関数の呼び出しでは、このメンバーは無視されます。
このメンバーは、プライマリ ドメイン コントローラー (PDC) からレプリケートされます。また、ドメイン内の各バックアップ ドメイン コントローラー (BDC) にも保持されます。 正確な値を取得するには、ドメイン内の各 BDC に対してクエリを実行する必要があります。 ユーザーが正しくないパスワードを使用してログオンしようとした回数が、取得された最大値です。
usri2_num_logons
型: DWORD
ユーザーがこのアカウントに正常にログオンした回数。 値 – 1 は、値が不明であることを示します。 NetUserAdd 関数と NetUserSetInfo 関数の呼び出しでは、このメンバーは無視されます。
このメンバーは、ドメイン内の各バックアップ ドメイン コントローラー (BDC) で個別に管理されます。 正確な値を取得するには、ドメイン内の各 BDC に対してクエリを実行する必要があります。 ユーザーが正常にログオンした回数は、取得した値の合計です。
usri2_logon_server
種類: LPWSTR
ログオン要求の送信先サーバーの名前を含む Unicode 文字列へのポインター。 サーバー名の前に 2 つの円記号 (\) を付ける必要があります。 ログオン要求を任意のログオン サーバーで処理できることを示すには、サーバー名にアスタリスク (\*) を指定します。 NULL 文字列は、要求をドメイン コントローラーに送信する必要があることを示します。
Windows サーバーの場合、 NetUserGetInfo と NetUserEnum は \* を返します。 NetUserAdd 関数と NetUserSetInfo 関数は、このメンバーを無視します。
usri2_country_code
型: DWORD
ユーザーが選択した言語の国/地域コード。
usri2_code_page
型: DWORD
ユーザーが選択した言語のコード ページ。
注釈
ユーザーとグループのアカウント権限の詳細については、「 特権」を参照してください。
ユーザー アカウント名は 20 文字に制限され、グループ名は 256 文字に制限されます。 さらに、アカウント名をピリオドで終えることはできません。また、コンマまたは印刷可能な文字を含めることはできません: "、/、、[、]、:、|、 <、 >、+、=、;、;、?、*。 また、名前には、印刷できない 1 から 31 の範囲の文字を含めることはできません。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | lmaccess.h (Include Lm.h) |