IAzAuthorizationStore
COMIDispatch (デュアル)comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。公式ドキュメント
承認ポリシーストアのルートとなるコンテナーを定義します。
解説(Remarks)
AzAuthorizationStore オブジェクトは、Initialize メソッドに渡された URL に従って名前が付けられます。このオブジェクトはポリシーストア内に名前を持ちません。
アプリケーションは、IAzApplication::InitializeClientContextFromToken メソッドを除き、Initialize メソッドを呼び出したユーザーコンテキストを、以降の AzAuthorizationStore オブジェクトへのすべてのアクセスで使用するようにしてください。
メソッド 51
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
操作を説明するコメントを設定または取得します。(Get)
| pbstrDescription | LPWSTR* | out | 認可ストアの説明文を受け取る文字列へのポインタである。 |
解説(Remarks)
Description プロパティの最大長は 1,024 文字です。
操作を説明するコメントを設定または取得します。(Put)
| bstrDescription | LPWSTR | in | 認可ストアに設定する説明文を指定する。 |
解説(Remarks)
Description プロパティの最大長は 1,024 文字です。
アプリケーションが情報を格納するために使用できる不透明なフィールドを設定または取得します。(IAzAuthorizationStore.get_ApplicationData)
| pbstrApplicationData | LPWSTR* | out | アプリケーション固有のデータ文字列を受け取る文字列へのポインタである。 |
解説(Remarks)
アプリケーションが情報を格納するために使用できる不透明なフィールドを設定または取得します。(IAzAuthorizationStore.put_ApplicationData)
| bstrApplicationData | LPWSTR | in | アプリケーション固有のデータ文字列を指定する。 |
解説(Remarks)
ドメインが到達不能と判断されるまでの時間をミリ秒単位で設定または取得します。(Get)
| plProp | INT* | out | ドメインへの問い合わせのタイムアウト値 (ミリ秒) を受け取る整数へのポインタである。 |
解説(Remarks)
指定したタイムアウト間隔が経過すると、LDAP クエリによるグループメンバーシップの取得は、再びドメインコントローラーへの接続を試みます。
ドメインが到達不能と判断されるまでの時間をミリ秒単位で設定または取得します。(Put)
| lProp | INT | in | ドメインへの問い合わせのタイムアウト値 (ミリ秒) を指定する。 |
解説(Remarks)
指定したタイムアウト間隔が経過すると、LDAP クエリによるグループメンバーシップの取得は、再びドメインコントローラーへの接続を試みます。
IAzClientContext::AccessCheck メソッドが、ビジネスルール (BizRule) の実行完了を待ってからキャンセルするまでの時間をミリ秒単位で設定または取得します。(Get)
| plProp | INT* | out | ビジネスルールスクリプトエンジンのタイムアウト値 (ミリ秒) を受け取る整数へのポインタである。 |
IAzClientContext::AccessCheck メソッドが、ビジネスルール (BizRule) の実行完了を待ってからキャンセルするまでの時間をミリ秒単位で設定または取得します。(Put)
| lProp | INT | in | ビジネスルールスクリプトエンジンのタイムアウト値 (ミリ秒) を指定する。 |
キャッシュされるビジネスルール (BizRule) スクリプトエンジンの最大数を設定または取得します。(Get)
| plProp | INT* | out | 同時に保持できるスクリプトエンジンの最大数を受け取る整数へのポインタである。 |
キャッシュされるビジネスルール (BizRule) スクリプトエンジンの最大数を設定または取得します。(Put)
| lProp | INT | in | 同時に保持できるスクリプトエンジンの最大数を指定する。 |
実行時監査を生成するかどうかを示す値を設定または取得します。(Get)
| pbProp | BOOL* | out | 実行時監査を生成するかどうかを示す BOOL 値を受け取るポインタである。 |
解説(Remarks)
GenerateAudits プロパティは、アプリケーションの初期化、クライアントコンテキストの作成、クライアントコンテキストの削除、およびアクセスチェックの実行時監査を制御します。クライアントコンテキストは、セキュリティ識別子 (SID)、名前、またはトークンから作成できます。
実行時監査を生成するかどうかを示す値を設定または取得します。(Put)
| bProp | BOOL | in | 実行時監査を生成するかどうかを示す BOOL 値を指定する。 |
解説(Remarks)
GenerateAudits プロパティは、アプリケーションの初期化、クライアントコンテキストの作成、クライアントコンテキストの削除、およびアクセスチェックの実行時監査を制御します。クライアントコンテキストは、セキュリティ識別子 (SID)、名前、またはトークンから作成できます。
Initialize メソッドを呼び出したユーザーコンテキストがオブジェクトを変更できるかどうかを示す値を取得します。
| pfProp | BOOL* | out | 認可ストアが書き込み可能で開かれているかどうかを示す BOOL 値を受け取るポインタである。 |
指定したプロパティ ID を持つ AzAuthorizationStore オブジェクトのプロパティを返します。
| lPropId | INT | in | 返す AzAuthorizationStore オブジェクトプロパティのプロパティ ID。次の表に指定可能な値を示します。
| ||||||||||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 | ||||||||||||||||||||||
| pvarProp | VARIANT* | out | 返される AzAuthorizationStore オブジェクトプロパティへのポインター。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定したプロパティ ID を持つ AzAuthorizationStore オブジェクトのプロパティに、指定した値を設定します。
| lPropId | INT | in | 設定する AzAuthorizationStore オブジェクトプロパティのプロパティ ID。次の表に指定可能な値を示します。
| ||||||||||||||||
| varProp | VARIANT | in | lPropId パラメーターで指定した AzAuthorizationStore オブジェクトプロパティに設定する値。次の表に、lPropId パラメーターの値に応じて使用する必要があるデータ型を示します。
| ||||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したプリンシパルを、指定したプリンシパルの一覧に追加します。(IAzAuthorizationStore.AddPropertyItem)
| lPropId | AZ_PROP_CONSTANTS | in | varProp パラメーターで指定したプリンシパルを追加する、プリンシパル一覧のプロパティ ID。このパラメーターには次のいずれかの値を指定できます。
| ||||||||||||||
| varProp | VARIANT | in | lPropId パラメーターで指定したプリンシパル一覧に追加するプリンシパル。 このバリアントは BSTR バリアントである必要があります。 lPropId パラメーターに AZ_PROP_POLICY_ADMINS_NAME、AZ_PROP_POLICY_READERS_NAME、または AZ_PROP_DELEGATED_POLICY_USERS_NAME を指定した場合、この文字列は一覧に追加するアカウントのアカウント名です。アカウント名は ユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。 | ||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
解説(Remarks)
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したプリンシパルを、指定したプリンシパルの一覧から削除します。(IAzAuthorizationStore.DeletePropertyItem)
| lPropId | INT | in | varProp パラメーターで指定したプリンシパルを削除する、プリンシパル一覧のプロパティ ID。次の表に指定可能な値を示します。
| ||||||||||||||
| varProp | VARIANT | in | lPropId パラメーターで指定したプリンシパル一覧から削除するプリンシパル。 このバリアントは BSTR バリアントである必要があります。 lPropId パラメーターに AZ_PROP_POLICY_ADMINS_NAME、AZ_PROP_POLICY_READERS_NAME、または AZ_PROP_DELEGATED_POLICY_USERS_NAME を指定した場合、この文字列は一覧から削除するアカウントのアカウント名です。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。 | ||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
ポリシー管理者として動作するプリンシパルのセキュリティ識別子 (SID) をテキスト形式で取得します。
| pvarAdmins | VARIANT* | out | ポリシー管理者の SID の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
ポリシー閲覧者として動作するプリンシパルのセキュリティ識別子 (SID) をテキスト形式で取得します。
| pvarReaders | VARIANT* | out | ポリシー読み取り者の SID の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。閲覧者はポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者はオブジェクトやその子オブジェクトを変更することはできません。
JScript では、返された SAFEARRAY を JScript の Array オブジェクトに変換する必要があります。
指定したセキュリティ識別子 (SID) をテキスト形式で、ポリシー管理者として動作するプリンシパルの一覧に追加します。(IAzAuthorizationStore.AddPolicyAdministrator)
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧に追加する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
ポリシー管理者の一覧を表示するには、PolicyAdministrators プロパティを使用します。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したセキュリティ識別子 (SID) をテキスト形式で、ポリシー管理者として動作するプリンシパルの一覧から削除します。
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧から削除する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
ポリシー管理者の一覧を表示するには、PolicyAdministrators プロパティを使用します。
指定したセキュリティ識別子 (SID) をテキスト形式で、ポリシー閲覧者として動作するプリンシパルの一覧に追加します。(IAzAuthorizationStore.AddPolicyReader)
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧に追加する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。閲覧者はポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者はオブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧を表示するには、PolicyReaders プロパティを使用します。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したセキュリティ識別子 (SID) をテキスト形式で、ポリシー閲覧者として動作するプリンシパルの一覧から削除します。
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧から削除する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。閲覧者はポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者はオブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧を表示するには、PolicyReaders プロパティを使用します。
承認マネージャーを初期化します。
| lFlags | AZ_PROP_CONSTANTS | in | 初期化の動作を制御するフラグ。このパラメーターには次のいずれかの値を指定できます。
AZ_AZSTORE_FLAG_CREATE フラグを指定した場合:
| ||||||||||||
| bstrPolicyURL | LPWSTR | in | 承認ポリシーデータベースの永続的なコピーの場所。 この文字列には、ポリシー URL プレフィックスとプロバイダー固有のポリシーの場所の両方を含める必要があります。Authorization Manager はプロバイダープレフィックスを使用して適切なプロバイダーを読み込みます。ストアはプロバイダー固有のポリシーの場所から読み込まれます。ポリシー URL プレフィックスにスペースを含めることはできません。 Active Directory ストアのポリシー URL プレフィックスは msldap: です。URL の一般的な形式は次のとおりです。 msldap://ServerName:Port//DistinguishedNameForTheStore サーバー名とポートは省略可能です。サーバー名を指定しない場合は、既定のドメインコントローラーが使用されます。ポートを指定しない場合は、既定の LDAP ポート (LDAP_PORT、389) が使用されます。ストアの識別名 (DN) は、AzAuthorizationStore オブジェクトの相対識別名 (RDN) で始まります。たとえば、AzAuthorizationStore オブジェクトの RDN が MyStore で、MyStore が AzMan という名前の組織単位 (OU) にある場合、Active Directory ストアの URL は次のようになります。 msldap://MyServer/CN=MyStore,OU=AzMan,DC=MyDomain,DC=Fabrikam,DC=Com XML ストアのポリシー URL プレフィックスは msxml: です。XML ストア URL の一般的な形式はファイル URL と同じで、次の例のようになります。
注意 XML ストアまたは SQL ストアをネットワーク経由で使用する場合、トラフィックは自動的には暗号化されません。転送中の承認情報を暗号化するには IPsec を使用できます。SQL ストアの場合は、オープンデータベースコネクティビティ (ODBC) 接続を暗号化するように設定することもできます。ODBC 接続の設定方法については、How to enable encryption after SQL Server has been installed (Network Utility) を参照してください。
| ||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。このパラメーターには次のいずれかの値を指定できます。 |
戻り値
メソッドが成功すると S_OK を返します。
bstrPolicyURL パラメーターが無効な場合、メソッドは HRESULT_FROM_WIN32(ERROR_INVALID_NAME) を返します。
メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
解説(Remarks)
Active Directory は、非ドメイン名前付けコンテキストとも呼ばれるアプリケーションパーティションをサポートしています。これらのパーティションは、プログラムがアプリケーションデータを格納する場所として使用されます。Authorization Manager のポリシーストアをアプリケーションパーティション内に作成したり保持したりすることはできません。代わりに、Active Directory の Authorization Manager ポリシーストアのコンテナーとしては Program Data コンテナーを使用してください。
オブジェクトおよびオブジェクト属性のキャッシュを、基になるポリシーストアと一致するように更新します。
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
UpdateCache メソッドが呼び出されると、前回の Initialize メソッドまたは UpdateCache メソッドの呼び出し以降に永続ストアへ加えられたすべての変更がキャッシュに取り込まれます。Submit メソッドで送信されていないキャッシュ上の変更は、ストア側の変更よりも優先されます。
ほとんどのストアは安定しており、変更はわずかであると想定されます。プロバイダーは、前回の更新以降に物理ストアへ変更が書き込まれたかどうかを効率的に判定できるように、このメソッドを実装することが期待されます。
AzAuthorizationStore オブジェクトが現在使用しているポリシーストアを削除します。
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
Delete メソッドが呼び出されると、AzAuthorizationStore オブジェクトは未初期化の状態に戻ります。その後、Initialize メソッドを呼び出してオブジェクトを再初期化できます。
Delete メソッドを呼び出す前に、クライアントがポリシーストア上で開いたすべてのオブジェクト (たとえば CreateApplication を使用して作成した IAzApplication オブジェクト) を解放する必要があります。現在のポリシーストアに子オブジェクトが含まれている AzAuthorizationStore オブジェクトに対して Delete メソッドを呼び出すと、HRESULT_FROM_WIN32(ERROR_SERVER_HAS_OPEN_HANDLES) が返されます。
ポリシーストアから IAzApplication オブジェクトを列挙するために使用する IAzApplications オブジェクトを取得します。
| ppAppCollection | IAzApplications** | out | ストア内のアプリケーションのコレクションを表す IAzApplications インターフェイスを受け取るポインタである。 |
解説(Remarks)
このプロパティは、AzAuthorizationStore オブジェクトの直接の子オブジェクトである IAzApplication オブジェクトの列挙にのみ使用できます。
指定した名前の IAzApplication オブジェクトを開きます。
| bstrApplicationName | LPWSTR | in | 開く IAzApplication オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppApplication | IAzApplication** | out | 開かれた IAzApplication オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定した名前の IAzApplication オブジェクトを作成します。
| bstrApplicationName | LPWSTR | in | 新しい IAzApplication オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppApplication | IAzApplication** | out | 作成された IAzApplication オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
返されたオブジェクトに対する変更を永続化するには、IAzApplication::Submit メソッドを呼び出す必要があります。
返される IAzApplication オブジェクトは、AzAuthorizationStore オブジェクトの直下の子オブジェクトです。
指定した名前の IAzApplication オブジェクトを AzAuthorizationStore オブジェクトから削除します。
| bstrApplicationName | LPWSTR | in | 削除する IAzApplication オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
削除された IAzApplication オブジェクトに子オブジェクトがある場合、それらの子オブジェクトも削除されます。キャッシュから削除された IAzApplication オブジェクトへの参照が残っている場合、その IAzApplication オブジェクトはもう使用できません。C++ では、削除された IAzApplication オブジェクトへの参照を IUnknown::Release メソッドを呼び出して解放する必要があります。C# および Visual Basic では、削除されたオブジェクトへの参照は自動的に解放されます。
ポリシーデータから IAzApplicationGroup オブジェクトを列挙するために使用する IAzApplicationGroups オブジェクトを取得します。(IAzAuthorizationStore.get_ApplicationGroups)
| ppGroupCollection | IAzApplicationGroups** | out | ストアレベルのアプリケーショングループのコレクションを表す IAzApplicationGroups インターフェイスを受け取るポインタである。 |
解説(Remarks)
このプロパティは、AzAuthorizationStore オブジェクトの直接の子オブジェクトである IAzApplicationGroup オブジェクトの列挙にのみ使用できます。
指定した名前の IAzApplicationGroup オブジェクトを作成します。(IAzAuthorizationStore.CreateApplicationGroup)
| bstrGroupName | LPWSTR | in | 新しい IAzApplicationGroup オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppGroup | IAzApplicationGroup** | out | 作成された IAzApplicationGroup オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
返されたオブジェクトに加えた変更を永続化するには、IAzApplicationGroup::Submit メソッドを呼び出す必要があります。
返される IAzApplicationGroup オブジェクトは、AzAuthorizationStore オブジェクトの直下の子オブジェクトです。
名前を指定して IAzApplicationGroup オブジェクトを開きます。(IAzAuthorizationStore.OpenApplicationGroup)
| bstrGroupName | LPWSTR | in | 開く IAzApplicationGroup オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppGroup | IAzApplicationGroup** | out | 開かれた IAzApplicationGroup オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定した名前の IAzApplicationGroup オブジェクトを AzAuthorizationStore オブジェクトから削除します。
| bstrGroupName | LPWSTR | in | 削除する IAzApplicationGroup オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
キャッシュから削除された IAzApplicationGroup オブジェクトへの参照が残っている場合、その IAzApplicationGroup オブジェクトはもう使用できません。C++ では、削除された IAzApplicationGroup オブジェクトへの参照を IUnknown::Release メソッドを呼び出して解放する必要があります。C# および Visual Basic では、削除されたオブジェクトへの参照は自動的に解放されます。
AzAuthorizationStore オブジェクトに加えた変更を永続化します。
| lFlags | INT | in | Submit メソッドの動作を変更するフラグ。既定値は 0 です。AZ_SUBMIT_FLAG_ABORT フラグを指定した場合、オブジェクトへの変更は破棄され、オブジェクトは基になるポリシーストアと一致するように更新されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
AzAuthorizationStore オブジェクトへの追加や変更は、Submit メソッドが呼び出されるまで永続化されません。Delete メソッドは変更を自動的に送信します。
Submit メソッドは子オブジェクトには及びません。子オブジェクトは個別にポリシーストアへ永続化する必要があります。作成した AzAuthorizationStore オブジェクトは、参照したり親オブジェクトにしたりする前に送信する必要があります。オブジェクトのデストラクターは、送信されていない変更を通知なく破棄します。
委任ポリシーユーザーとして動作するプリンシパルのセキュリティ識別子 (SID) をテキスト形式で取得します。
| pvarDelegatedPolicyUsers | VARIANT* | out | 委任ポリシーユーザーの SID の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトまたは IAzScope オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを読み取ることを許可されたプリンシパルです。
指定したセキュリティ識別子 (SID) をテキスト形式で、委任ポリシーユーザーとして動作するプリンシパルの一覧に追加します。(IAzAuthorizationStore.AddDelegatedPolicyUser)
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧に追加する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトまたは IAzScope オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを読み取ることを許可されたプリンシパルです。
委任ポリシーユーザーは XML ストアではサポートされません。
委任ポリシーユーザーの一覧を表示するには、DelegatedPolicyUsers プロパティを使用します。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したセキュリティ識別子 (SID) をテキスト形式で、委任ポリシーユーザーとして動作するプリンシパルの一覧から削除します。
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧から削除する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトまたは IAzScope オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを読み取ることを許可されたプリンシパルです。
委任ポリシーユーザーは XML ストアではサポートされません。
委任ポリシーユーザーの一覧を表示するには、DelegatedPolicyUsers プロパティを使用します。
アカウントの解決を行うコンピューターの名前を取得します。
| pbstrTargetMachine | LPWSTR* | out | 認可ストアの操作対象となるコンピューター名を受け取る文字列へのポインタである。 |
解説(Remarks)
対象コンピューターの決定では、ローカルドメインおよびリモートドメインの Active Directory、分散ファイルシステム (DFS) 共有、マウントポイント、ローカルドライブ、リモートのマップされた共有などが考慮されます。
承認ストアが変更されたときにポリシー監査を生成するかどうかを示す値を設定または取得します。(IAzAuthorizationStore.get_ApplyStoreSacl)
| pbApplyStoreSacl | BOOL* | out | ストアにシステムアクセス制御リスト (SACL) を適用するかどうかを示す BOOL 値を受け取るポインタである。 |
解説(Remarks)
ポリシー監査は、基になるポリシーストアが変更されたときに生成されます。成功監査と失敗監査の両方が要求されます。
承認ストアが変更されたときにポリシー監査を生成するかどうかを示す値を設定または取得します。(IAzAuthorizationStore.put_ApplyStoreSacl)
| bApplyStoreSacl | BOOL | in | ストアにシステムアクセス制御リスト (SACL) を適用するかどうかを示す BOOL 値を指定する。 |
解説(Remarks)
ポリシー監査は、基になるポリシーストアが変更されたときに生成されます。成功監査と失敗監査の両方が要求されます。
ポリシー管理者として動作するプリンシパルのアカウント名を取得します。(IAzAuthorizationStore.get_PolicyAdministratorsName)
| pvarAdmins | VARIANT* | out | ポリシー管理者のアカウント名の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
ポリシー閲覧者として動作するプリンシパルのアカウント名を取得します。(IAzAuthorizationStore.get_PolicyReadersName)
| pvarReaders | VARIANT* | out | ポリシー読み取り者のアカウント名の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。閲覧者はポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者はオブジェクトやその子オブジェクトを変更することはできません。
JScript では、返された SAFEARRAY を JScript の Array オブジェクトに変換する必要があります。
指定したアカウント名を、ポリシー管理者として動作するプリンシパルの一覧に追加します。(IAzAuthorizationStore.AddPolicyAdministratorName)
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧に追加するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したアカウント名を、ポリシー管理者として動作するプリンシパルの一覧から削除します。(IAzAuthorizationStore.DeletePolicyAdministratorName)
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧から削除するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
指定したアカウント名を、ポリシー閲覧者として動作するプリンシパルの一覧に追加します。(IAzAuthorizationStore.AddPolicyReaderName)
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧に追加するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。閲覧者はポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者はオブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧をアカウント名形式で表示するには、PolicyReadersName プロパティを使用します。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したアカウント名を、ポリシー閲覧者として動作するプリンシパルの一覧から削除します。(IAzAuthorizationStore.DeletePolicyReaderName)
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧から削除するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。閲覧者はポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者はオブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧をアカウント名形式で表示するには、PolicyReadersName プロパティを使用します。
委任ポリシーユーザーとして動作するプリンシパルのアカウント名を取得します。
| pvarDelegatedPolicyUsers | VARIANT* | out | 委任ポリシーユーザーのアカウント名の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトまたは IAzScope オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを読み取ることを許可されたプリンシパルです。
指定したアカウント名を、委任ポリシーユーザーとして動作するプリンシパルの一覧に追加します。(IAzAuthorizationStore.AddDelegatedPolicyUserName)
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧に追加するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
XML ストアに対してこのメソッドを呼び出そうとすると、E_INVALIDARG が返されます。
メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトまたは IAzScope オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを読み取ることを許可されたプリンシパルです。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したアカウント名を、委任ポリシーユーザーとして動作するプリンシパルの一覧から削除します。(IAzAuthorizationStore.DeleteDelegatedPolicyUserName)
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧から削除するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功すると S_OK を返します。
XML ストアに対してこのメソッドを呼び出そうとすると、E_INVALIDARG が返されます。
メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトまたは IAzScope オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを読み取ることを許可されたプリンシパルです。
指定した IAzApplication オブジェクトをキャッシュからアンロードします。
| bstrApplicationName | LPWSTR | in | 閉じる IAzApplication オブジェクトの名前。 | ||||||
| lFlag | INT | in | 操作の動作を制御するフラグ。次の表に指定可能な値を示します。
|
戻り値
メソッドが成功すると S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IAzAuthorizationStore "{EDBD9CA9-9B82-4F6A-9E8B-98301E450F14}" #usecom global IAzAuthorizationStore IID_IAzAuthorizationStore "{B2BCFF59-A757-4B0B-A1BC-EA69981DA69E}" #comfunc global IAzAuthorizationStore_get_Description 7 var #comfunc global IAzAuthorizationStore_put_Description 8 wstr #comfunc global IAzAuthorizationStore_get_ApplicationData 9 var #comfunc global IAzAuthorizationStore_put_ApplicationData 10 wstr #comfunc global IAzAuthorizationStore_get_DomainTimeout 11 var #comfunc global IAzAuthorizationStore_put_DomainTimeout 12 int #comfunc global IAzAuthorizationStore_get_ScriptEngineTimeout 13 var #comfunc global IAzAuthorizationStore_put_ScriptEngineTimeout 14 int #comfunc global IAzAuthorizationStore_get_MaxScriptEngines 15 var #comfunc global IAzAuthorizationStore_put_MaxScriptEngines 16 int #comfunc global IAzAuthorizationStore_get_GenerateAudits 17 var #comfunc global IAzAuthorizationStore_put_GenerateAudits 18 int #comfunc global IAzAuthorizationStore_get_Writable 19 var #comfunc global IAzAuthorizationStore_GetProperty 20 int,int,var #comfunc global IAzAuthorizationStore_SetProperty 21 int,int,int #comfunc global IAzAuthorizationStore_AddPropertyItem 22 int,int,int #comfunc global IAzAuthorizationStore_DeletePropertyItem 23 int,int,int #comfunc global IAzAuthorizationStore_get_PolicyAdministrators 24 var #comfunc global IAzAuthorizationStore_get_PolicyReaders 25 var #comfunc global IAzAuthorizationStore_AddPolicyAdministrator 26 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyAdministrator 27 wstr,int #comfunc global IAzAuthorizationStore_AddPolicyReader 28 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyReader 29 wstr,int #comfunc global IAzAuthorizationStore_Initialize 30 int,wstr,int #comfunc global IAzAuthorizationStore_UpdateCache 31 int #comfunc global IAzAuthorizationStore_Delete 32 int #comfunc global IAzAuthorizationStore_get_Applications 33 sptr #comfunc global IAzAuthorizationStore_OpenApplication 34 wstr,int,sptr #comfunc global IAzAuthorizationStore_CreateApplication 35 wstr,int,sptr #comfunc global IAzAuthorizationStore_DeleteApplication 36 wstr,int #comfunc global IAzAuthorizationStore_get_ApplicationGroups 37 sptr #comfunc global IAzAuthorizationStore_CreateApplicationGroup 38 wstr,int,sptr #comfunc global IAzAuthorizationStore_OpenApplicationGroup 39 wstr,int,sptr #comfunc global IAzAuthorizationStore_DeleteApplicationGroup 40 wstr,int #comfunc global IAzAuthorizationStore_Submit 41 int,int #comfunc global IAzAuthorizationStore_get_DelegatedPolicyUsers 42 var #comfunc global IAzAuthorizationStore_AddDelegatedPolicyUser 43 wstr,int #comfunc global IAzAuthorizationStore_DeleteDelegatedPolicyUser 44 wstr,int #comfunc global IAzAuthorizationStore_get_TargetMachine 45 var #comfunc global IAzAuthorizationStore_get_ApplyStoreSacl 46 var #comfunc global IAzAuthorizationStore_put_ApplyStoreSacl 47 int #comfunc global IAzAuthorizationStore_get_PolicyAdministratorsName 48 var #comfunc global IAzAuthorizationStore_get_PolicyReadersName 49 var #comfunc global IAzAuthorizationStore_AddPolicyAdministratorName 50 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyAdministratorName 51 wstr,int #comfunc global IAzAuthorizationStore_AddPolicyReaderName 52 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyReaderName 53 wstr,int #comfunc global IAzAuthorizationStore_get_DelegatedPolicyUsersName 54 var #comfunc global IAzAuthorizationStore_AddDelegatedPolicyUserName 55 wstr,int #comfunc global IAzAuthorizationStore_DeleteDelegatedPolicyUserName 56 wstr,int #comfunc global IAzAuthorizationStore_CloseApplication 57 wstr,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_IAzAuthorizationStore "{EDBD9CA9-9B82-4F6A-9E8B-98301E450F14}" #usecom global IAzAuthorizationStore IID_IAzAuthorizationStore "{B2BCFF59-A757-4B0B-A1BC-EA69981DA69E}" #comfunc global IAzAuthorizationStore_get_Description 7 sptr #comfunc global IAzAuthorizationStore_put_Description 8 wstr #comfunc global IAzAuthorizationStore_get_ApplicationData 9 sptr #comfunc global IAzAuthorizationStore_put_ApplicationData 10 wstr #comfunc global IAzAuthorizationStore_get_DomainTimeout 11 sptr #comfunc global IAzAuthorizationStore_put_DomainTimeout 12 int #comfunc global IAzAuthorizationStore_get_ScriptEngineTimeout 13 sptr #comfunc global IAzAuthorizationStore_put_ScriptEngineTimeout 14 int #comfunc global IAzAuthorizationStore_get_MaxScriptEngines 15 sptr #comfunc global IAzAuthorizationStore_put_MaxScriptEngines 16 int #comfunc global IAzAuthorizationStore_get_GenerateAudits 17 sptr #comfunc global IAzAuthorizationStore_put_GenerateAudits 18 int #comfunc global IAzAuthorizationStore_get_Writable 19 sptr #comfunc global IAzAuthorizationStore_GetProperty 20 int,int,sptr #comfunc global IAzAuthorizationStore_SetProperty 21 int,int,int #comfunc global IAzAuthorizationStore_AddPropertyItem 22 int,int,int #comfunc global IAzAuthorizationStore_DeletePropertyItem 23 int,int,int #comfunc global IAzAuthorizationStore_get_PolicyAdministrators 24 sptr #comfunc global IAzAuthorizationStore_get_PolicyReaders 25 sptr #comfunc global IAzAuthorizationStore_AddPolicyAdministrator 26 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyAdministrator 27 wstr,int #comfunc global IAzAuthorizationStore_AddPolicyReader 28 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyReader 29 wstr,int #comfunc global IAzAuthorizationStore_Initialize 30 int,wstr,int #comfunc global IAzAuthorizationStore_UpdateCache 31 int #comfunc global IAzAuthorizationStore_Delete 32 int #comfunc global IAzAuthorizationStore_get_Applications 33 sptr #comfunc global IAzAuthorizationStore_OpenApplication 34 wstr,int,sptr #comfunc global IAzAuthorizationStore_CreateApplication 35 wstr,int,sptr #comfunc global IAzAuthorizationStore_DeleteApplication 36 wstr,int #comfunc global IAzAuthorizationStore_get_ApplicationGroups 37 sptr #comfunc global IAzAuthorizationStore_CreateApplicationGroup 38 wstr,int,sptr #comfunc global IAzAuthorizationStore_OpenApplicationGroup 39 wstr,int,sptr #comfunc global IAzAuthorizationStore_DeleteApplicationGroup 40 wstr,int #comfunc global IAzAuthorizationStore_Submit 41 int,int #comfunc global IAzAuthorizationStore_get_DelegatedPolicyUsers 42 sptr #comfunc global IAzAuthorizationStore_AddDelegatedPolicyUser 43 wstr,int #comfunc global IAzAuthorizationStore_DeleteDelegatedPolicyUser 44 wstr,int #comfunc global IAzAuthorizationStore_get_TargetMachine 45 sptr #comfunc global IAzAuthorizationStore_get_ApplyStoreSacl 46 sptr #comfunc global IAzAuthorizationStore_put_ApplyStoreSacl 47 int #comfunc global IAzAuthorizationStore_get_PolicyAdministratorsName 48 sptr #comfunc global IAzAuthorizationStore_get_PolicyReadersName 49 sptr #comfunc global IAzAuthorizationStore_AddPolicyAdministratorName 50 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyAdministratorName 51 wstr,int #comfunc global IAzAuthorizationStore_AddPolicyReaderName 52 wstr,int #comfunc global IAzAuthorizationStore_DeletePolicyReaderName 53 wstr,int #comfunc global IAzAuthorizationStore_get_DelegatedPolicyUsersName 54 sptr #comfunc global IAzAuthorizationStore_AddDelegatedPolicyUserName 55 wstr,int #comfunc global IAzAuthorizationStore_DeleteDelegatedPolicyUserName 56 wstr,int #comfunc global IAzAuthorizationStore_CloseApplication 57 wstr,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。