MySQL 连接器/NET 开发人员指南  / 第 5 章连接器/NET 编程  / 5.7 使用部分信任/中等信任  /  5.7.3 使用 GAC 中未安装的连接器/NET 库配置部分信任

5.7.3 使用 GAC 中未安装的连接器/NET 库配置部分信任

将 Web 应用程序部署到共享托管环境时,此环境配置为在部分或中等信任级别下运行其所有 .NET 应用程序,您可能无法在 GAC 中安装 MySQL Connector/NET 库。相反,您将对库的引用放在项目或解决方案内的bin 或文件夹中。lib在这种情况下,您可以使用与库位于 GAC 中时不同的方式配置安全性。

Connector/NET 通常由在 Windows 环境中运行的应用程序使用,在 Windows 环境中,协议的默认通信是通过套接字或 TCP/IP 使用的。要运行此协议,必须在 Web 配置文件中具有所需的套接字权限,如下所示:

  1. 打开 medium trust policy web 配置文件,该文件应该在这个文件夹下:

    %windir%\Microsoft.NET\Framework\{version}\CONFIG\web_mediumtrust.config

    如果您使用的是 64 位框架安装,则 Framework64在路径中使用而不是 。Framework

  2. 找到SecurityClasses标签:

    <SecurityClass Name="SocketPermission"
    Description="System.Net.SocketPermission, System, Version=4.0.0.0,
    Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
  3. 向下滚动并查找以下内容 PermissionSet

    <PermissionSet version="1" Name="ASP.Net">
  4. 在其中添加以下内容 PermissionSet

    <IPermission class="SocketPermission" version="1" Unrestricted="true" />

    此配置使您可以使用具有默认 Windows 协议 TCP/IP 的驱动程序,而不会出现任何安全问题。此方法仅支持 TCP/IP 协议,因此您不能使用任何其他类型的连接。

    此外,由于MySQLClientPermissions 该类未添加到中等信任策略中,因此您无法使用它。此配置是在没有 GAC 的情况下使用 Connector/NET 所需的最低配置。