Объект Roles (TMSL)
Применимо к: SQL Server 2016 и более поздних версий Analysis Services Azure Analysis Services Fabric/Power BI Premium
Определяет роль в модели, задающую коллекцию разрешений. Членство в роли состоит из субъектов безопасности Windows. Вы можете задать фильтры для роли, чтобы ограничить доступ к определенным объектам.
Определение объекта
Все объекты имеют общий набор свойств, включая имя, тип, описание, коллекцию свойств и заметки. Объекты Role также имеют следующие свойства.
modelPermission
Устанавливает область разрешений для базы данных. Допустимые значения — none.
read,
readRefresh,
Обновить
и администратор.
members
Члены состоят из имени и идентификатора элемента, где имя члена — это псевдоним или понятное имя субъекта безопасности Windows, а идентификатор — идентификатор безопасности. Оба указаны в определении роли.
TablePermissions
Разрешение таблицы — это именованный объект с разрешениями, определенными с помощью выражения DAX. Это свойство является необязательным и используется для применения фильтра безопасности.
Использование
Объекты ролей используются в команде Alter (TMSL),команде Create (TMSL),команде CreateOrReplace (TMSL) и команде Delete (TMSL).
Объект Role является свойством модели, но также может быть указан как свойство объекта Database при сопоставлении "один к одному" между моделью и базой данных.
При создании, замене или изменении объекта роли укажите все свойства определения объекта для чтения и записи. Пропуск свойства чтения и записи считается удалением.
Полный синтаксис
Ниже приведено представление схемы объекта роли модели.
"roles": {
"type": "array",
"items": {
"description": "ModelRole object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"modelPermission": {
"enum": [
"none",
"read",
"readRefresh",
"refresh",
"administrator"
]
},
"annotations": {
"type": "array",
"items": {
"description": "Annotation object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"additionalProperties": false
}
},
"members": {
"type": "array",
"items": {
"anyOf": [
{
"description": "WindowsModelRoleMember object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"memberName": {
"type": "string"
},
"memberId": {
"type": "string"
},
"annotations": {
"type": "array",
"items": {
"description": "Annotation object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
},
{
"description": "ExternalModelRoleMember object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"memberName": {
"type": "string"
},
"memberId": {
"type": "string"
},
"identityProvider": {
"type": "string"
},
"memberType": {
"enum": [
"auto",
"user",
"group"
]
},
"annotations": {
"type": "array",
"items": {
"description": "Annotation object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}
]
}
},
"tablePermissions": {
"type": "array",
"items": {
"description": "TablePermission object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"filterExpression": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"annotations": {
"type": "array",
"items": {
"description": "Annotation object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}
}