需要 Workflow Manager 许可。
地理数据库管理员必须为将要访问 Workflow Manager (Classic) 工作空间的所有用户授予表的特定权限。这可以通过创建数据库角色并向各个用户分配角色来实现。
对示例进行复制和粘贴可能会导致语法错误。
授予权限
在 SQL Server Management Studio 中,可通过方案向 Workflow Manager (Classic)工作空间表授予权限。示例脚本显示如何从角色中移除现有成员以及如何删除角色。然后重新创建角色并通过方案对角色分配权限。
授予权限:
USE [wmxdb]
GO
EXEC sp_droprolemember 'wmx_editor', 'giseditor'
GO
EXEC sp_droprole 'wmx_editor'
GO
EXEC sp_addrole 'wmx_editor', 'wmx'
GO
GRANT DELETE ON SCHEMA::[wmx] TO [wmx_editor]
GRANT EXECUTE ON SCHEMA::[wmx] TO [wmx_editor]
GRANT INSERT ON SCHEMA::[wmx] TO [wmx_editor]
GRANT SELECT ON SCHEMA::[wmx] TO [wmx_editor]
GRANT UPDATE ON SCHEMA::[wmx] TO [wmx_editor]
GO
EXEC sp_droprolemember 'wmx_viewer', 'gisviewer'
GO
EXEC sp_droprole 'wmx_viewer'
GO
EXEC sp_addrole 'wmx_viewer', 'wmx'
GO
GRANT SELECT ON SCHEMA::[wmx] TO [wmx_viewer]
GO
验证角色
将列出角色。
验证角色:
EXEC sp_helprolemember 'wmx_editor'
GO
EXEC sp_helprolemember 'wmx_viewer'
GO
验证角色权限
将列出分配给角色的权限。
验证角色权限:
select dp.NAME AS principal_name,
dp.type_desc AS principal_type_desc,
o.NAME AS object_name,
p.permission_name,
p.state_desc AS permission_state_desc
from sys.database_permissions p
left OUTER JOIN sys.all_objects o
on p.major_id = o.OBJECT_ID
inner JOIN sys.database_principals dp
on p.grantee_principal_id = dp.principal_id
where dp.NAME in ('wmx_editor','wmx_viewer')
GO
创建编辑者用户
用户应该有他们自己的登录帐户名。下面的示例显示了如何创建编辑者地理数据库用户。
创建编辑者登录帐户:
USE master
GO
EXEC sp_addlogin N'giseditor', 'gis$editor', @logindb, @loginlang
GO
在 WMXDB 中为登录帐户创建用户:
USE [wmxdb]
GO
CREATE USER [giseditor] FOR LOGIN [giseditor]
GO
将用户添加到编辑者角色:
USE [wmxdb]
GO
EXEC sp_addrolemember N'wmx_editor', N'giseditor'
GO
创建查看者用户
用户应该有他们自己的登录帐户名。下面的示例显示了如何创建查看者地理数据库用户。
创建查看者登录帐户:
USE master
GO
EXEC sp_addlogin N'gisviewer', 'gis$viewer', @logindb, @loginlang
GO
在 WMXDB 中为登录帐户创建用户:
USE [wmxdb]
GO
CREATE USER [gisviewer] FOR LOGIN [gisviewer]
GO
将用户添加到编辑者角色:
USE [wmxdb]
GO
EXEC sp_addrolemember N'wmx_viewer', N'gisviewer'
GO