Class: PermissionAssignment

@nginstack/engine/lib/security/PermissionAssignment~ PermissionAssignment


new PermissionAssignment()

Representa a atribuição de uma ou várias permissões para um usuário, grupo ou papel de usuário para uma determinada classe de dados ou arquivo do sistema.

Members


applyMode :number

Modo como essa permissão deve ser aplicada nas classes de dados filhas de #resource, caso ele seja uma classe de dados. Para arquivos, essa propriedade sempre será null. Valores possíveis:

  • PermissionApplyModes.ONLY_TO_CLASS: permissões serão aplicadas apenas na classe de dados.
  • PermissionApplyModes.TO_CHILDREN_CLASSES_AND_FILES: permissões serão aplicadas apenas na classe de dados e nas suas descendentes, além dos arquivos associados a essas classes de dados.
Type:
  • number

assignee :number

Chave do usuário, grupo ou papel que está recebendo a permissão.

Type:
  • number

extraFilters :Object.<*>

Quando uma permissão é concedida a uma classe de dados, ela pode ser estabelecida para apenas parte das entidades dessa classe de dados. Para isso são definidos valores de filtros para os campos de permissão configurados como filtros extra. Ver module:@nginstack/engine/lib/classdef/PermissionField#useAsExtraFilter para mais detalhes.

Esta propriedade é um mapa associando o nome do campo de filtro extra ao seu valor. O nome do campo da tabela de permissão é normalizado em letras minúsculas. Ela não deve ser modificada diretamente. Para isso, utilize o método #set.

Type:
  • Object.<*>
See:

resource :number

Chave da classe de dados ou arquivo ao qual o usuário, grupo ou papel está recebendo a permissão.

Type:
  • number

values :Object.<*>

Permissões concedidas ao usuário, grupo ou papel informado em #assignee a classe de dados ou arquivo #resource.

Esta propriedade é um mapa associando o nome do campo da tabela de permissões (iPermission) ao seu valor. O nome do campo é normalizado em letras minúsculas. Ela não deve ser modificada diretamente. Para isso, utilize o método #set.

Type:
  • Object.<*>
See:

Methods


<static> fromDataSet(data)

Cria uma instância de PermissionAssignment a partir de um registro existente da tabela de permissões (iPermission) identificado por key.

Ao restaurar um registro do dataSet, não será gerado um erro caso o valor assignee seja uma chave inválida, permitindo que o registro possa ser corrigido pelo usuário.

Parameters:
Name Type Description
data DataSet

Dados registro da tabela de permissão.

Returns:

Representação da atribuição de permissão contida no registro informado.

Type
PermissionAssignment

<static> fromKey(key)

Cria uma instância de PermissionAssignment a partir de um registro existente da tabela de permissões (iPermission) identificado por key

Parameters:
Name Type Description
key number

Chave do registro da tabela de permissão.

Returns:

Representação da atribuição de permissão contida no registro informado.

Type
PermissionAssignment

assign(assignment)

Torna esta atribuição de permissões igual a atribuição informada.

Parameters:
Name Type Description
assignment PermissionAssignment | Record.<*, *>

Instância ou representação literal da atribuição de um conjunto de permissões. Essa representação deve ter a mesma estrutura da classe PermissionAssignment.


get(name)

Obtém o valor de uma permissão ou filtro extra.

Parameters:
Name Type Description
name string

Nome da permissão ou filtro extra.


saveToDataSet(data)

Grava esta atribuição de permissões no registro corrente do dataSet da tabela iPermission informado.

Parameters:
Name Type Description
data DataSet

DataSet onde será gravada a atribuição de permissões.


set(name, value)

Atualiza o valor de uma permissão ou filtro extra.

Parameters:
Name Type Description
name string

Nome da permissão ou filtro extra.

value *

Valor da permissão ou filtro extra.