[によって公開される機能を活用する AD RMS SDK
Msdrm.dll のクライアントは、Windows Server 2008、Windows Vista、Windows Server 2008 R2、Windows 7、Windows Server 2012、および Windows 8 で使用できます。 変更または変更される場合があります。
以降のバージョンでは使用できません。 代わりに、 Active Directory Rights Management Services SDK 2.1 を使用します。
Msipc.dll でクライアントによって公開される機能を活用します。
DRMCreateUser 関数は、権限が付与されるユーザーを作成します。
構文
DRMEXPORT HRESULT UDAPICALL DRMCreateUser(
[in] PWSTR wszUserName,
[in] PWSTR wszUserId,
[in] PWSTR wszUserIdType,
[out] DRMPUBHANDLE *phUser
);
パラメーター
[in] wszUserName
ユーザーまたはユーザーのグループを識別する null で終わる文字列 (「解説」を参照)。 このパラメーターは、多くの場合、電子メール アドレスです。 作成したユーザーが hOwner として DRMCreateIssuanceLicense に渡されると、この値はライセンス XrML の所有者ノードにアタッチされます。 このパラメーターに使用できる値の詳細については、 wszUserIdType パラメーターを参照してください。
[in] wszUserId
権限が付与されるユーザーを識別する null で終わる文字列。 このパラメーターには、Passport ID (PUID)、Windows ID セキュリティ ID (SID)、または NULL を指定できます。 このパラメーターが NULL の場合、 wszUserIdType には "Unspecified" が含まれている必要があります。 この ID は、Active Directory Rights Management Services システムによって検証されます。 このパラメーターに使用できる値の詳細については、 wszUserIdType パラメーターを参照してください。
[in] wszUserIdType
ユーザー ID の種類。 このパラメーターには、次の値のいずれかを指定できます。
"Windows"
この値の 場合、wszUserName と wszUserId には 次の値を含めることができます。
wszUserName
完全修飾 SMTP アドレス。 wszUserId に SID が含まれている場合は NULL を指定できます。
wszUserId
オプションの SID (装飾目的でのみ使用され、検証されません)。 指定されていない場合、ライセンスは "未指定" と記録されます。
"Passport"
この値の 場合、wszUserName と wszUserId には 次の値を含めることができます。
wszUserName
完全修飾 SMTP アドレス。 すべての場合に必要です。
wszUserId
オプションの PUID (装飾目的でのみ使用され、検証されません)。 指定されていない場合、ライセンスは "未指定" と記録されます。
"Unspecified"
この値の 場合、wszUserName と wszUserId には 次の値を含めることができます。
wszUserName
完全修飾 SMTP アドレス。 すべての場合に必要です。
wszUserId
NULL (「解説」を参照)。
"Internal"
この値の 場合、wszUserName と wszUserId には 次の値を含めることができます。
wszUserName
NULL
wszUserId
次のいずれか:
"すべてのユーザー"
ライセンスは、要求するすべてのユーザーに付与されますが、要求元のユーザーにアタッチされます。
"所有者"
DRMCreateIssuanceLicense で指定された所有者にライセンスが付与されます。
"フェデレーション"
この値の 場合、wszUserName と wszUserId には 次の値を含めることができます。
wszUserName
完全修飾 SMTP アドレス。 wszUserId に SID が含まれている場合は NULL を指定できます。
wszUserId
オプションの SID (装飾目的でのみ使用され、検証されません)。 指定されていない場合、ライセンスは "未指定" と記録されます。
[out] phUser
作成されたユーザーのハンドルへのポインター。 DRMClosePubHandle を呼び出してハンドルを閉じます。
戻り値
関数が成功した場合、関数は S_OKを返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。 一般的なエラー コードの一覧については、「 共通の HRESULT 値」を参照してください。
解説
ライセンス要求時に、ユーザー ID が WINDOWS または PASSPORT の場合、ユーザーは SID または PUID によって自分自身を識別する権限アカウント証明書を提示する必要があります。 ユーザー ID の種類が UNSPECIFIED の場合 (Windows、Passport、またはその他の種類がわからない場合)、クライアントのメール アドレスを入力するだけで、AD RMS システムは電子メール アドレスのみを使用して ID を確認します。 ただし、この方法の安全性ははるかに低くなります。
Windows 承認は、クライアントが独自のライセンス サーバーを持つ企業内にある場合に使用されます (通常、これは LAN または仮想プライベート ネットワーク経由で行われます)。 クライアントが企業外のサーバー (通常はインターネット経由) に使用ライセンスを要求する場合は、Passport 認証を使用する必要があります。 AD RMS サービスで Passport 承認を使用するには、AD RMS グローバル管理の Web ページに移動し、[ 信頼ポリシー] ページを表示し、[ Trust Passport RAC] をクリックします。 Windows ユーザーと Passport ユーザーを 1 つの発行ライセンスに混在させる場合があります。
電子メール配布リスト (など marketing@contoso.com) の下にユーザーのグループの発行ライセンスを作成する場合は、完全修飾配布リスト名を wszUserName に挿入し、 wszUserId を 空のままにします。 サーバーは、使用ライセンスを取得するときに配布リストを展開します。 配布リストに複数の入れ子になった配布リストが含まれている場合は、パフォーマンスの低下が発生する可能性があることに注意してください。
DRMClosePubHandle を呼び出して、この関数を呼び出して作成されたユーザー オブジェクトのハンドルを閉じます。
必要条件
| 対象プラットフォーム | Windows |
| ヘッダー | msdrm.h |
| Library | Msdrm.lib |
| [DLL] | Msdrm.dll |