NetGroupAdd 関数 (lmaccess.h)
NetGroupAdd 関数は、セキュリティ アカウント マネージャー (SAM) データベース、またはドメイン コントローラーの場合は Active Directory であるセキュリティ データベースにグローバル グループを作成します。
構文
NET_API_STATUS NET_API_FUNCTION NetGroupAdd(
[in] LPCWSTR servername,
[in] DWORD level,
[in] LPBYTE buf,
[out] LPDWORD parm_err
);
パラメーター
[in] servername
関数を実行するリモート サーバーの DNS または NetBIOS 名を指定する定数文字列へのポインター。 このパラメーターが NULL の場合は、ローカル コンピューターが使用されます。
[in] level
データの情報レベルを指定します。 このパラメーターには、次の値のいずれかを指定できます。
値 | 説明 |
---|---|
|
グローバル グループ名を指定します。 buf パラメーターには、GROUP_INFO_0構造体へのポインターが含まれています。 |
|
グローバル グループ名とコメントを指定します。 buf パラメーターには、GROUP_INFO_1構造体へのポインターが含まれています。 |
|
グローバル グループに関する詳細情報を指定します。 buf パラメーターには、GROUP_INFO_2構造体へのポインターが含まれています。 Windows XP 以降では、代わりに GROUP_INFO_3 を使用することをお勧めします。 |
|
グローバル グループに関する詳細情報を指定します。 buf パラメーターには、GROUP_INFO_3構造体へのポインターが含まれています。
Windows 2000: このレベルはサポートされていません。 |
[in] buf
データを含むバッファーへのポインター。 このデータの形式は 、level パラメーターの値によって異なります。 詳細については、「 ネットワーク管理機能バッファー」を参照してください。
[out] parm_err
ERROR_INVALID_PARAMETERが返されたときに、エラーが発生したグローバル グループ情報構造体の最初のメンバーのインデックスを受け取る値へのポインター。 このパラメーターが NULL の場合、エラー時にインデックスは返されません。 詳細については、 NetGroupSetInfo 関数を参照してください。
戻り値
関数が成功した場合、戻り値はNERR_Success。
関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。
リターン コード | 説明 |
---|---|
|
ユーザーには、要求された情報へのアクセス権がありません。 |
|
コンピューター名が無効です。 |
|
グローバル グループは既に存在します。 |
|
操作は、ドメインのプライマリ ドメイン コントローラーでのみ許可されます。 |
|
level パラメーターに指定された値が無効です。 |
|
この操作は、特定の特殊なグループでは許可されません。 これらのグループには、ユーザー グループ、管理者グループ、ローカル グループ、ゲスト グループが含まれます。 |
解説
Active Directory をプログラミングしている場合は、特定の Active Directory サービス インターフェイス (ADSI) メソッドを呼び出して、ネットワーク管理グループ関数を呼び出すことで実現できるのと同じ機能を実現できます。 詳細については、「 IADsGroup」を参照してください。
Active Directory を実行しているドメイン コントローラーでこの関数を呼び出すと、 セキュリティ保護可能なオブジェクトのアクセス制御リスト (ACL) に基づいてアクセスが許可または拒否されます。 既定の ACL では、Domain Admins と Account Operators のみがこの関数を呼び出すように許可されます。 メンバー サーバーまたはワークステーションでは、管理者と Power Users のみがこの関数を呼び出すことができます。 詳細については、「 ネットワーク管理機能のセキュリティ要件」を参照してください。 ACL、ACE、およびアクセス トークンの詳細については、「存取控制 モデル」を参照してください。
ユーザー コンテナーのセキュリティ記述子は、この関数のアクセスチェックを実行するために使用されます。 呼び出し元は、グループ クラスの子オブジェクトを作成できる必要があります。 通常、呼び出し元は、この関数の呼び出しを成功させるには、オブジェクト全体への書き込みアクセス権も必要です。
ユーザー アカウント名は 20 文字に制限され、グループ名は 256 文字に制限されます。 さらに、アカウント名をピリオドで終えることはできません。また、コンマまたは印刷可能な文字を含めることはできません: "、/、、[、]、:、|、 <、 >、+、=、;、;、?、*。 また、名前には、印刷できない 1 から 31 の範囲の文字を含めることはできません。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | lmaccess.h (Include Lm.h) |
Library | Netapi32.lib |
[DLL] | Netapi32.dll |