Plug-in Explicit Role (proteção de segurança da instância)
Ative o plug-in Explicit Role (com.glide.explicit_roles) para fornecer à instância as novas funções snc_internal e snc_external para aplicações B2B e B2C, impedindo que usuários externos acessem dados internos. Os usuários corporativos (funcionários) devem ter a função interna, enquanto os usuários não corporativos (não funcionários) devem ter a função externa.
Ao instalar o plug-in Explicit Role:
- Ele atribui a nova função snc_internal a todos os usuários existentes. Ele também atribui a função snc_internal a todas as tabelas sem qualquer função.
- Quando você cria um usuário ou tabela após ativar o plug-in Explicit Role, a Now Platform atribui ao usuário ou tabela a função snc_internal.
- A Now Platform impede que os usuários com a função snc_external acessem qualquer tabela que não seja explicitamente designada com a função snc_external.
- Qualquer tabela com a função pública pode ser acessada por usuários internos ou externos.
- Alguns widgets do portal de serviço exigem um login, mas não exigem nenhuma função de usuário específica. Depois de instalar o plug-in Explicit Roles, esses portais ficarão inacessíveis para usuários externos.
- Para permitir o acesso de usuários externos, edite seu widget para mudar as funções necessárias de em branco para snc_internal, snc_external.
- Um exemplo desse problema são os clientes que usam a aplicação de gestão de casos e precisam que usuários externos possam anexar arquivos a seus registros de caso. A alteração da configuração do widget encryption-context-picker, conforme descrito, permite que usuários externos se conectem conforme o esperado.
- Para obter mais informações sobre como configurar widgets, consulte Configurar opções de instância de widget.
Nota:
Não mova System Update Sets entre instâncias cuja habilitação do plug-in Explicit Roles esteja diferente entre elas. Para obter mais informações, consulte System Update Sets.
Resumo da função
- snc_internal
- Esta função é atribuída a todos os usuários internos (funcionários ou internos a uma organização). Qualquer novo usuário adicionado também obtém essa função durante seu primeiro login/representação, desde que o usuário não tenha a função snc_external já atribuída. Todas as regras de controle de acesso (ACLs) existentes sem uma função são corrigidas com a função 'snc_internal'. Para novas ACLs, a Now Platform adiciona automaticamente esta função se a ACL for salva sem nenhuma função.
- snc_external
- Esta função indica que o usuário é externo à sua organização e não deve ter acesso aos recursos, a menos que:
- Você permita explicitamente o acesso por meio de ACLs para a função snc_external, ou
- Você conceda explicitamente a eles funções adicionais.
- público
- Quaisquer entidades com função pública atribuída a ela podem ser acessadas por usuários snc_internal e snc_external.
Ao usar o plug-in Explicit Role:
- Revise e valide se qualquer tabela com a função pública não contém nenhum registro confidencial para os usuários externos, incluindo usuários públicos não autenticados.
- Se a tabela com a função pública contiver dados confidenciais e você quiser restringir os registros confidenciais de usuários externos:
- Remova a função pública da tabela ou
- Adicione uma ACL com script adicional à tabela.
- Revise e valide se todos os endpoints, como Scripted REST APIs, usam GlideRecordSecure ou verificam explicitamente as funções usando
canRead(),canWrite(),canUpdate()ecanDelete().
Mais informações
| Atributo | Descrição |
|---|---|
| Nome do Plug-in | com.glide.explicit_roles |
| Tipo de configuração | Definição do sistema > Plug-in |
| Configurar em Instance Security Center | Não |
| Finalidade | Impedir que usuários externos acessem dados internos. |
| Valor recomendado | Ativo |
| Impacto funcional | (Baixo) Nenhum impacto significativo, pois o plug-in atribui automaticamente a função snc_internal à tabela para que os usuários internos existentes ainda tenham o acesso necessário. |
| Risco à segurança | (Alto) Usuários externos (não funcionários) podem acessar muitas tabelas confidenciais na Now Platform que não possuem funções atribuídas a eles. Elas devem ser acessados somente por usuários internos (funcionários). |
| Referências | Funções explícitas |
Etapas para configurar
Ao criar um recurso ou aplicação com Explicit Roles:
- Crie uma função que herde a função snc_external para seu novo recurso ou aplicação.
- Ao criar um usuário externo, remova a função snc_internal e adicione a função recém-criada que herda a função snc_external.
- Ao adicionar a nova função que herda a função snc_external à tabela existente, revise e valide se a tabela não contém nenhum registro confidencial.
- Ao criar uma tabela, valide que a tabela só pode ser acessada por funções de usuário interno e externo autorizadas.
- Ao criar endpoints, como Scripted REST APIs, use GlideRecordSecure ou verifique explicitamente as funções usando
canRead(),canWrite(), canUpdate() ecanDelete().
Ao criar uma tabela com função pública, verifique se a tabela não contém nenhum registro confidencial para usuários externos, incluindo usuários públicos não autenticados.