Práticas recomendadas para uso das permissões refinadas no SharePoint Server
APLICA-SE A:2013 2016 2019 Subscription Edition SharePoint no Microsoft 365
As permissões ajustadas podem influenciar na segurança de um farm do SharePoint. Potenciais problemas de desempenho podem ocorrer quando você usa permissões ajustadas. As informações a seguir ajudam a tratar de problemas quando um ambiente estiver vivenciando questões causadas por uso incorreto ou por permissões ajustadas.
Você pode evitar as permissões ajustadas ao fazer o seguinte:
Interromper a herança de permissão com menos frequência possível.
Usar grupos baseados em associação de pasta para atribuir permissões.
Devido a uma alteração feita em recursos de rastreamento contínuo de pesquisa do SharePoint Server, que agora incluem informações de segurança, não recomendamos mais que você evite o uso de grupos do SharePoint para gerenciar associações de usuário e de grupo dinâmicas. Antes do SharePoint Server, o uso de associações dinâmicas nos grupos do SharePoint podiam fazer com que resultados da pesquisa não fossem mostrados corretamente para todos os membros até ser feito um rastreamento completo após a alteração de associação. Agora, como o recurso de rastreamento contínuo inclui informações de segurança, uma associação dinâmica ou outra alteração de segurança será separada mais cedo (o valor padrão é de 15 minutos) e será usada pelo recorte de resultado da consulta de pesquisa.
Atribuir permissões no nível mais alto possível. Como parte desta estratégia, considere as seguintes técnicas:
Colocar documentos que exijam permissões ajustadas em bibliotecas de documentos definidas para dar suporte a cada grupo de permissões. Mantenha as bibliotecas de documentos em um conjunto de sites ou um site separado.
Usar níveis de publicação de documento diferentes para controlar o acesso. Antes da publicação de um documento, as permissões avançadas e as configurações de controle de versão podem ser definidas para usuários que só aprovam itens na biblioteca de documentos.
Para bibliotecas que não contenham documentos (listas), use os níveis de permissão ReadSecurity e WriteSecurity. Quando uma lista for criada, os proprietários poderão definir as permissões no nível do item como acesso Ler ou acesso Criar e Editar.
Antes de começar
Antes de começar essa operação, revise as informações a seguir sobre pré-requisitos:
Práticas recomendadas para evitar problemas de limite comuns das permissões ajustadas
Se o requisito da sua empresa tiver de usar permissões ajustadas, considere as seguintes práticas recomendadas:
Certifique-se de que não tem demasiados itens ao mesmo nível da hierarquia nas bibliotecas de documentos, porque o tempo necessário para processar itens nas vistas aumenta.
Use manipuladores de eventos para controlar a permissão de edição. Você pode ter um manipulador de eventos que registre um evento usando os métodos SPEventReceiverType.ItemUpdating e SPEventReceiverType.ItemUpdated e então usar código para controlar se a atualização será permitida. Isso é muito poderoso, uma vez que você pode tomar decisões de segurança com base em qualquer metadados de uma lista ou item sem afetar o desempenho da renderização do modo de exibição.
Use o método AddToCurrentScopeOnly para atribuir a associação Acesso Limitado em um grupo do SharePoint. O elemento-chave neste princípio é reestruturar a arquitetura para que a associação de âmbito não cause o novo cálculo da Lista de Controlo de Acesso (ACL) na biblioteca de documentos principal e na Web. Para obter informações adicionais sobre alterações de escopo, Problema 3: usar permissões ajustadas por alterações de estrutura de escopo (somente 2010).
Ao trabalhar com permissões detalhadas, é fácil encontrar involuntariamente limites que impedem a resolução de permissões. Esta seção descreve alguns desses limites e as práticas recomendadas sobre como defini-las para permitir a resolução correta das permissões.
Escopos em excesso em uma lista
Existe um limite incorporado de 50 000 âmbitos por lista ou biblioteca de documentos. Depois que 50.000 escopos são atingidos, a adição de novos escopos em uma determinada lista ou biblioteca de documentos é proibida.
Práticas recomendadas:
Defina escopos exclusivos somente em objetos pai, como pastas.
Não crie um sistema com muitos objetos com permissões exclusivas abaixo de um objeto que tenha muitos âmbitos.
Se a sua empresa exigir mais de 50.000 itens com permissões exclusivas em uma lista ou em uma biblioteca de documentos, então será preciso mover alguns itens para uma lista ou biblioteca de documentos diferente.
Alterar o limite de escopo interno
Altere o limite de escopo interno usando um script do Microsoft PowerShell.
Para alterar o limite do escopo interno usando o Windows PowerShell
- Verifique se você possui as seguintes associações:
A função de servidor fixa securityadmin na instância do SQL Server.
A função de banco de dados fixa db_owner em todos os bancos de dados que devem ser atualizados.
Grupos de administradores no servidor no qual está a executar os cmdlets do PowerShell.
Adicione associações que sejam necessárias além dos mínimos acima.
Um administrador pode usar o cmdlet Add-SPShellAdmin para conceder permissões para usar cmdlets do SharePoint Server 2016.
Observação
Se você não possui permissões, entre em contato com seu administrador de Configuração ou o administrador do SQL Server para solicitar permissões. Para obter mais informações sobre as permissões do PowerShell, veja Add-SPShellAdmin.
Inicie o SharePoint Management Shell.
No prompt de comando do PowerShell, digite o seguinte comando:
$webapp = Get-SPWebApplication http://<serverName> $webapp.MaxUniquePermScopesPerList $webapp.MaxUniquePermScopesPerList = <Number of scope limit>
Onde:
Em que< serverName> é o nome do servidor de aplicações no farm do SharePoint.
Em <que Número de limite> de âmbito é o número máximo de âmbitos de permissões exclusivos que pretende permitir por lista do SharePoint. Com frequência, o limite efetivo será muito inferior a 50.000 caso vários escopos existam no mesmo nível hierárquico. Isso acontece porque verificações de tela em itens abaixo desse nível hierárquicos devem ser feitas em relação a todos os escopos acima deles. Essa limitação pode fazer com que o número efetivo de escopos permitidos em uma consulta em particular seja reduzido para 1.000 a 2.000.
Observação
Recomendamos que você use o Windows PowerShell ao executar tarefas administrativas de linha de comando. A ferramenta de linha de comando Stsadm está obsoleta, mas está incluída para oferecer suporte à compatibilidade com versões anteriores do produto.
Membros em excesso em um escopo de permissão
Como descrito anteriormente, uma ACL binária é calculada quando a associação do escopo de permissão associado é alterada. Isso inclui quando um novo membro de acesso limitado é adicionado. À medida que o número de associações ao escopo aumenta, o tempo necessário para recalcular a ACL binária aumenta.
O problema pode piorar, uma vez que a adição de usuários a um escopo exclusivo de um objeto filho fará com que seus escopos pai sejam atualizados com os novos membros de Acesso Limitado, mesmo que isso por fim não resulte em nenhuma alteração na associação ao escopo pai. Quando isso ocorre, a ACL binária para os escopos pai também devem ser recalculados, às custas de mais tempo de processamento, mesmo se isso por fim resultar na mesma ACL.
Prática recomendada:
Utilize a associação de grupo em vez da associação de usuário individual em escopos de permissão. Por exemplo, se um grupo único puder ser usado em vez de 1.000 usuários individuais, o escopo terá 999 entradas de associação a menos para o escopo de permissão e para qualquer um de seus escopos pai. Além disso, o grupo único será atualizado com direitos de Acesso Limitado em vez da atualização de cada usuário com direitos de Acesso Limitado. Isso também ajuda a aumentar a velocidade de envio de direitos de Acesso Limitado por push e do recálculo da ACL nos objetos do escopo pai.
Importante
A utilização de um grupo do SharePoint causará um rastreamento completo do índice. Se possível, use um grupo de domínios.
Hierarquia de escopo muito profundo
Como indicado anteriormente, a profundidade hierárquica de escopos de permissão pode afetar o trabalho necessário para adicionar usuários de Acesso Limitado a escopos pai. Quanto maior o número de escopos exclusivos acima de um item, até e incluindo a Web com permissões exclusivas, maior será o número de adições que deverão ocorrer. Se uma hierarquia de escopos for muito profunda, uma alteração de associação ao escopo poderá demorar mais para ocorrer, já que cada alteração de associação no item de escopo mais profundo terá de atualizar iterativamente escopos pai com uma adição de associação para o usuário ou grupo com direitos de Acesso Limitado adicionado explicitamente. Adicionalmente, isso aumentará o número de ACLs binárias que terão de ser recalculadas, com um efeito de desempenho relacionado.
Prática recomendada:
Reduza o número de objetos pai com permissões exclusivas. Isso reduzirá o número de escopos que precisarão ser atualizados com membros de Acesso Limitado quando qualquer escopo de objeto filho for alterado.