DsAddSidHistoryA 関数 (ntdsapi.h)

DsAddSidHistory 関数は、あるドメインからセキュリティ プリンシパルのプライマリ アカウント セキュリティ識別子 (SID) を取得し、別のフォレスト内の別のドメインのセキュリティ プリンシパルの sIDHistory 属性に追加します。 ソース ドメインが Windows 2000 ネイティブ モードの場合、この関数はソース プリンシパルの sIDHistory 値も取得し、それらを sIDHistory宛先プリンシパルに追加します。

DsAddSidHistory 関数は、既存のセキュリティ プリンシパルのプライマリ アカウント SID を別のフォレスト内のドメイン内のプリンシパルの sIDHistory に追加することで、セキュリティに依存する機能を実行し、後者は前者がアクセスできるすべてのリソースへのアクセスを効果的に許可します。 この関数の使用とセキュリティへの影響の詳細については、「DsAddSidHistoryの使用」を参照してください。

構文

NTDSAPI DWORD DsAddSidHistoryA(
  [in] HANDLE                   hDS,
  [in] DWORD                    Flags,
  [in] LPCSTR                   SrcDomain,
  [in] LPCSTR                   SrcPrincipal,
  [in] LPCSTR                   SrcDomainController,
  [in] RPC_AUTH_IDENTITY_HANDLE SrcDomainCreds,
  [in] LPCSTR                   DstDomain,
  [in] LPCSTR                   DstPrincipal
);

パラメーター

[in] hDS

DSBind または DSBindWithCred 関数から取得したディレクトリ サービス ハンドル 含まれます。

[in] Flags

将来の使用のために予約されています。 NULLに設定します。

[in] SrcDomain

SrcPrincipalの SID に対してクエリを実行するドメインの名前 指定する null で終わる文字列へのポインター。

ソース ドメインが Windows Server オペレーティング システムで実行されている場合、SrcDomain ドメイン ネーム システム (DNS) 名 (たとえば、fabrikam.com)、フラット NetBIOS (Fabrikam など) のいずれかになります。 DNS 名は可能な限り使用する必要があります。

[in] SrcPrincipal

ソース ドメイン内のセキュリティ プリンシパル、ユーザー、またはグループの名前を指定する null で終わる文字列へのポインター。 この名前は、ドメイン相対セキュリティ アカウント マネージャー (SAM) 名です (例: 回避)。

[in] SrcDomainController

ソース プリンシパル SID の安全な取得と監査の生成に使用するソース ドメインのプライマリ ドメイン コントローラー (PDC) エミュレーターの名前を指定する null で終わる文字列へのポインター。

このパラメーターが NULL場合、DSBindWithCred プライマリ ドメイン コントローラーが選択されます。

SrcDomainController DNS 名またはフラット NetBIOS 名を指定できます。 DNS 名は可能な限り使用する必要があります。

[in] SrcDomainCreds

ソース ドメインの管理者権限を持つユーザーの ID と資格情報を表す ID ハンドルが含まれています。 このハンドルを取得するには、DsMakePasswordCredentialsを呼び出します。 このユーザーは、Administrators または Domain Administrators グループのメンバーである必要があります。 この呼び出しがリモート コンピューターから宛先 DC に行われる場合、資格情報をプライバシー保護するために、リモート コンピューターと宛先 DC の両方で 128 ビット暗号化をサポートする必要があります。 128 ビット暗号化を使用できず、SrcDomainCreds 指定されている場合は、宛先 DC で呼び出しを行う必要があります。

このパラメーターが NULL場合は、呼び出し元の資格情報がソース ドメインへのアクセスに使用されます。 呼び出し元ユーザーには、ソース ドメインの管理者権限が必要です。

[in] DstDomain

DstPrincipal が存在する宛先ドメインの名前 指定する null で終わる文字列へのポインター。 この名前には、DNS 名 (たとえば、fabrikam.com)、NetBIOS 名 (Fabrikam など) を指定できます。 移行先ドメインは、Windows 2000 ネイティブ モードを実行する必要があります。

[in] DstPrincipal

ターゲット ドメイン内のセキュリティ プリンシパル、ユーザー、またはグループの名前を指定する null で終わる文字列へのポインター。 このドメイン相対 SAM 名は、sIDHistory 属性が SrcPrincipalの SID で更新されるプリンシパルを識別します。

戻り値

次のような Win32 エラー コードを返します。

備考

手記

ntdsapi.h ヘッダーは、DsAddSidHistory をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルまたは実行時エラーが発生する不一致につながる可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
サポートされる最小サーバー Windows Server 2008
ターゲット プラットフォーム の ウィンドウズ
ヘッダー ntdsapi.h
ライブラリ Ntdsapi.lib
DLL Ntdsapi.dll

関連項目

DSBind

DSBindWithCred の

ドメイン コントローラーとレプリケーション管理機能の

DsMakePasswordCredentials

DsAddSidHistory の使用を する

ldap_bind_s

ldap_open