代码之家  ›  专栏  ›  技术社区  ›  scoob

在SQL Server CLR过程中使用OLEDB驱动程序时出现问题

  •  0
  • scoob  · 技术社区  · 16 年前

    我们正在尝试在SQL Server 2005计算机上创建C clr存储过程。C代码通过OLEDB驱动程序连接到外部数据源以获取数据表。它已经在一个单独的控制台应用程序上进行了测试,运行起来没有问题。 (OLEDEB驱动程序是连接到专有数据库的专有驱动程序…)

    在SQL Server上,我们已经设置了程序集的外部权限级别,它是强名称的,并且已经在SQL Server中为它创建了一个非对称密钥。

    当我们尝试执行该过程时,会遇到以下两个问题:

    • 用于联系OLEDB的凭据 SQL服务是 在,而不是凭证下运行 SQL内容中记录的用户

    • 引发.NET框架:

      System.Security.SecurityException:请求System.Data.OleDb.OleDbPermission类型的权限

    我们似乎无法为运行OLEDB驱动程序的进程授予必要的权限。要么就是我们的配置不足,要么就是我们做错了什么。将权限级别设置为不安全也不是一个选项…

    有人对这种问题有经验吗? 欢迎输入!