0

我正在探索和试验 SQL Server 2012 的主数据服务。我发现只读功能可用于属性(列)。我已将一列标记为只读且有效;但是,我失去了所有管理员权限。我仍然可以探索模型,但没有别的。

当模型未在权限和系统管理视图下列出时,如何取回 MDS 上的管理员权限。我仍然对数据库本身拥有管理员权限。

4

1 回答 1

1

当您将模型的代码属性的权限设置为只读时,有时模型会从权限和系统视图中“消失”。

如果您仍然可以访问底层数据库,则可以直接在数据库级别更新成员权限。

您应该更新表 tblSecurityRoleAccessMember 和/或 tblSecurityRoleAccess 中相关成员的权限 ID。

如果您需要更改立即生效,您必须执行以下 SP

USE [database];
GO
DECLARE @Model_ID INT;
SELECT @Model_ID = ID FROM mdm.tblModel WHERE [Name] = N'Model_Name';
EXEC [mdm].[udpSecurityMemberProcessRebuildModel]
@Model_ID=@Model_ID, @ProcessNow=1;
GO

以下文章中描述了有关设置安全表的详细信息。

http://www.rad.pasfu.com/index.php?/archives/145-Deep-Dive-into-Security-Schema-of-Master-Data-Services-Database.html

于 2014-07-17T13:20:55.423 回答