イントラネット アプリケーションの完全信頼での実行Running Intranet Applications in Full Trust

.NET Framework 3.5 Service Pack 1 (SP1) 以降、アプリケーションとそのライブラリ アセンブリをネットワーク共有から完全信頼アセンブリとして実行できます。Starting with the .NET Framework version 3.5 Service Pack 1 (SP1), applications and their library assemblies can be run as full-trust assemblies from a network share. イントラネット上の共有から読み込まれたアセンブリに、MyComputer ゾーンの証拠が自動的に追加されます。MyComputer zone evidence is automatically added to assemblies that are loaded from a share on the intranet. この証拠は、コンピューター上に存在するアセンブリと同じ許可セット (通常は完全な信頼) をこれらのアセンブリに付与します。This evidence gives those assemblies the same grant set (which is typically full trust) as the assemblies that reside on the computer. この機能は、ClickOnce アプリケーションまたはホスト上で実行するように設計されたアプリケーションには適用されません。This functionality does not apply to ClickOnce applications or to applications that are designed to run on a host.

ライブラリ アセンブリのルールRules for Library Assemblies

ネットワーク共有上の実行可能ファイルによって読み込まれるアセンブリには、次のルールが適用されます。The following rules apply to assemblies that are loaded by an executable on a network share:

  • ライブラリ アセンブリは、実行可能アセンブリと同じフォルダーに存在する必要があります。Library assemblies must reside in the same folder as the executable assembly. サブフォルダーに存在するアセンブリまたは異なるパスで参照されているアセンブリには、完全な信頼の許可セットは付与されません。Assemblies that reside in a subfolder or are referenced on a different path are not given the full-trust grant set.

  • 実行可能ファイルがアセンブリの遅延読み込みを行う場合は、実行可能ファイルの開始に使ったものと同じパスを使う必要があります。If the executable delay-loads an assembly, it must use the same path that was used to start the executable. たとえば、共有 \\network-computer\share がドライブ文字にマップされていて、そのパスから実行可能ファイルが実行される場合、ネットワーク パスを使って実行可能ファイルにより読み込まれるアセンブリには、完全な信頼は付与されません。For example, if the share \\network-computer\share is mapped to a drive letter and the executable is run from that path, assemblies that are loaded by the executable by using the network path will not be granted full trust. MyComputer ゾーン内のアセンブリを遅延読み込みするには、実行可能ファイルはドライブ文字のパスを使う必要があります。To delay-load an assembly in the MyComputer zone, the executable must use the drive letter path.

以前のイントラネット ポリシーの復元Restoring the Former Intranet Policy

以前のバージョンの .NET Framework では、共有アセンブリに Intranet ゾーンの証拠が付与されていました。In earlier versions of the .NET Framework, shared assemblies were granted Intranet zone evidence. 共有上のアセンブリに完全な信頼を付与するには、コード アクセス セキュリティ ポリシーを指定する必要がありました。You had to specify code access security policy to grant full trust to an assembly on a share.

この新しい動作は、イントラネットのアセンブリの既定値です。This new behavior is the default for intranet assemblies. コンピューター上のすべてのアプリケーションに適用されるレジストリ キーを設定することで、Intranet の証拠を提供する以前の動作に戻すことができます。You can return to the earlier behavior of providing Intranet evidence by setting a registry key that applies to all applications on the computer. この手順は、32 ビット コンピューターと 64 ビット コンピューターでは異なります。This process is different for 32-bit and 64-bit computers:

  • 32 ビット コンピューターでは、システム レジストリの HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework キーの下にサブキーを作成します。On 32-bit computers, create a subkey under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework key in the system registry. キーの名前は LegacyMyComputerZone、DWORD 値は 1 です。Use the key name LegacyMyComputerZone with a DWORD value of 1.

  • 64 ビット コンピューターでは、システム レジストリの HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework キーの下にサブキーを作成します。On 64-bit computers, create a subkey under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework key in the system registry. キーの名前は LegacyMyComputerZone、DWORD 値は 1 です。Use the key name LegacyMyComputerZone with a DWORD value of 1. HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework キーの下に、同じサブキーを作成します。Create the same subkey under the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework key.

関連項目See also