我想给我写的某个触发器或存储过程设置访问权限,必须要授权才能看到我触发器或存储过程中的代码,我一开始用With Encryption加密触发器或存储过程,在网上查看了一下,竟然可以解密掉.注意虽然设置了访问权限,但不影响到触发器或存储过程的运行,解决了高分重谢!!

解决方案 »

  1.   

    SQL 2005好像还没看到解密工具
      

  2.   

    在网上找到邹老大写的存储过程解密用With Encryption方式加密的的存储过程,触发器,函数
      

  3.   

    用户权限可以控制查看能力, 但楼主要的似乎不是这个, 因为看起来你想把sa这样的管理员也禁止掉不允许查看.保密级别达到这样, 在sql server中应该没有直接的办法. 可以考虑写扩展存储过程(sql 2000), 或者CLR存储过程(SQL 2005)
      

  4.   

    如果你是要自己加密存储过程, 则只能自己存储相关的存储过程文本, 调用的时候再建立.
    但这样逃不过profile的监视如果你想调整sql对存储过程的加密方式, 则这是不可能的.