AppID キー
1 つ以上の DCOM オブジェクトの構成オプションを、レジストリ内の 1 つの一元化された場所にグループ化します。 同じ実行可能ファイルによってホストされている DCOM オブジェクトは、一般的なセキュリティと構成設定の管理を簡略化するために、1 つの AppID にグループ化されます。
レジストリ キー
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{AppID_GUID}
レジストリ値 | 形容 |
---|---|
AccessPermissionをする | このクラスのインスタンスにアクセスできるプリンシパルのアクセス制御リスト (ACL) について説明します。 この ACL は、CoInitializeSecurity呼び出さないアプリケーションでのみ使用されます。 |
ActivateAtStorageの | 使用している永続的な状態または初期化元の永続的な状態と同じコンピューター上のオブジェクトをインスタンス化するようにクライアントを構成します。 |
AppIDをする | 名前付き実行可能ファイルに対応する AppID GUID を識別します。 |
AppIDFlagsの | "対話型ユーザー" として実行するように構成された COM サーバーを、既定以外のデスクトップでクライアントによって起動またはバインドする方法を構成します。 |
AuthenticationLevel | CoInitializeSecurity呼び出さないアプリケーション、または CoInitializeSecurity を呼び出して AppID を指定するアプリケーションの認証レベルを設定します。 |
DllSurrogate | DLL サーバーをサロゲート プロセスで実行できるようにします。 空の文字列が指定されている場合は、システム指定のサロゲートが使用されます。それ以外の場合、値は使用するサロゲートのパスを指定します。 |
DllSurrogateExecutable | DLL サーバーを、DllSurrogate レジストリ値と組み合わせて、カスタム サロゲート プロセスで実行できるようにします。 |
エンドポイント | DCOM 通信に指定された TCP ポート番号を使用するように COM アプリケーションを構成します。 |
LaunchPermissionの | このクラスの新しいサーバーを起動できるプリンシパルのアクセス制御リスト (ACL) について説明します。 |
LoadUserSettingsの | 起動ユーザー アプリケーション ID として実行されている COM サーバーのユーザー プロファイルを COM が読み込むかどうかを決定します。 |
LocalService | サービス アプリケーションとしてオブジェクトをインストールします。 |
PreferredServerBitnessの | この COM サーバーの優先アーキテクチャ (32 ビットまたは 64 ビット) を設定します。 |
RemoteServerName | COSERVERINFO 構造体が指定されていないアクティブ化関数が呼び出されるたびに、特定のコンピューターでオブジェクトの実行を要求するようにクライアントを構成します。 |
ROTFlagsの | 実行中のオブジェクト テーブル (ROT) での COM サーバーの登録を制御します。 |
RunAs | サービス アプリケーションとして書き込まずにリモート クライアントによってアクティブ化されたときに、特定のユーザー アカウントで実行されるようにクラスを構成します。 |
ServiceParameters | LocalService レジストリ値を介して COM で使用するためにインストールされたオブジェクトに渡すコマンド ライン パラメーターを指定します。 |
SRPTrustLevel | アプリケーションのソフトウェア制限ポリシー (SRP) 信頼レベルを設定します。 |
備考
AppID は、次の 2 つの異なるメカニズムを使用して実行可能ファイルとクラスにマップされます。
- AppID キーを識別する 128 ビットグローバル一意識別子 (GUID) の使用。 クラスは、名前付き値 "AppID" 内の CLSID キーの下にある対応する AppID を示します。 このマッピングは、アクティブ化中に使用されます。
- 実行可能ファイル名 ("MYOLDAPP.EXE" など) を示す名前付き値の使用。 この名前付き値は REG_SZ 型で、実行可能ファイルに関連付けられている AppID の文字列形式が含まれています。 このマッピングは、既定のアクセス許可と認証レベルを取得するために使用されます。
HKEY_LOCAL_MACHINE\SOFTWARE\Classes キーは、以前のバージョンの COM との互換性のために保持された HKEY_CLASSES_ROOT キーに対応します。
COM サーバーの場合、マッピングは通常、登録プロセス中または dcomcnfg.exeの実行時に生成され、レジストリに書き込まれます。 ただし、AppID キーを使用してセキュリティを設定する COM クライアントは、適切なレジストリ キーを作成し、レジストリ関数を 呼び出すか、Regedit.exeを使用して必要なマッピングを指定する必要があります。 その後、AccessPermission や AuthenticationLevel などの値をクライアントに設定できます。 たとえば、クライアント プロセスの実行可能ファイルの名前が "YourClient.exe" で、認証レベルを "None" に設定するとします。 Guidgen.exe または Uuidgen.exe を使用して、実行可能ファイルの AppID である GUID を作成します。 次の例に示すように、レジストリに値を設定します。ここで、00000001は認証レベル "None" を表します。
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID
{MyGuid}
AuthenticationLevel = 00000001
MyClient.exe
AppID = {MyGUID}