【问题标题】:CLR UDF Exception In SQL Server 2005SQL Server 2005 中的 CLR UDF 异常
【发布时间】:2010-09-18 06:28:44
【问题描述】:

当我尝试我的 CLR UDF 时,我收到了这个错误:

消息 6522,第 16 级,状态 1,第 1 行

在执行用户定义的例程或聚合“getFileSize”期间发生 .NET Framework 错误:

System.Security.SecurityException:请求“System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”类型的权限失败。

System.Security.SecurityException:

在 System.Security.CodeAccessSecurityEngine.Check(对象需求, StackCrawlMark& stackMark, Boolean isPermSet)

在 System.Security.CodeAccessPermission.Demand()

在 System.IO.DirectoryInfo..ctor(字符串路径)

在 GetFileInfo.ShowDirectoryName.DirSize(SqlString 目录)。

关于如何解决这个问题的任何想法?我试图在 BOL 上花一些时间,但我现在真的背对着墙……

谢谢。

【问题讨论】:

  • 您的 SQL UDF 是否在查找文件的大小?看起来任何用户 SQL Server 运行时都没有读取文件的权限?

标签: sql-server sql-server-2005 tsql user-defined-functions sqlclr


【解决方案1】:

SQLCLR 使用代码访问安全性对程序集的功能施加了某些限制。

阅读 SQL 中的各种权限集:

http://www.devx.com/codemag/Article/31193/0/page/4

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-19
    • 2012-07-27
    • 1970-01-01
    • 2010-10-26
    相关资源
    最近更新 更多