非adssys用户可以运行系统程序吗?
我正在开发可以使用的BizTalk WCF Adapter for Advantage,我需要浏览和解析元数据。这是Visual Studio的一个加载项,支持.Net 2.0或更高版本,可生成模式和绑定文件(wsdl)。它还可以生成可以在WCF服务中使用的类。
我们的数据库有超过1000个表,50个视图和50个程序。我们希望将对象分配给用户ID,并返回属于该用户的对象。
谢谢,
霍华德
答案 0 :(得分:1)
是的,非adssys用户可以运行系统过程并使用select从系统表中检索信息。 Advantage使用权限和基于用户/角色的系统来确定用户对数据库中对象的访问权限。用户的权限将确定是否可以成功执行过程或从系统表返回多少信息。
此link在Advantage数据字典中提供有关权限系统的全面信息。
关于表和视图,要查看表或视图的名称,用户必须至少具有视图表的SELECT权限。要修改表属性(例如表的约束和索引),用户必须具有对表的ALTER权限。对于没有表的ALTER权限的用户,这些约束对象和索引对象将被隐藏。
对于存储过程,用户必须具有该过程的EXECUTE权限才能查看过程的名称。
管理权限的首选方法是将用户分配到组(角色),并为组授予权限。属于某个组的用户将继承该组的权限。
答案 1 :(得分:0)
从概念上讲,您可能希望查看从描述性表中存储/检索元数据,然后使用该结果返回对象。对于使用SQL子句筛选功能的所有用户,您具有单一访问点。获得对象数据后,您可以使用更高级别的“用户”来返回对象,而无需实际授予对单个用户的访问权限。只是一个想法。