Solucionar problemas de permissões refinadas comuns para o SharePoint Server
APLICA-SE A:2013 2016 2019 Subscription Edition SharePoint no Microsoft 365
Após implementar permissões refinadas, ambientes do SharePoint podem enfrentar problemas de segurança ou desempenho. Examine as informações a seguir para ajudar a resolver problemas que podem estar relacionados a permissões refinadas.
Problemas e soluções recomendadas para problemas comuns de desempenho de permissões refinadas
Os problemas a seguir podem ajudar a reduzir o efeito de problemas de desempenho que estão relacionados ao uso abrangente de permissões refinadas. Cada um dos seguintes problemas aborda alterações à segurança do ambiente, hierarquia de objetos ou código personalizado que contribui para os problemas de desempenho relacionados a permissões refinadas. Cada problema começa com o seguinte ambiente de exemplo em que uma única Web contém múltiplas bibliotecas de documentos, cada uma com muitos objetos subordinados com permissão exclusiva.
Problema 1: Remover permissões refinadas e usar a imposição de segurança apenas no nível da Web
Para rearquitetar o ambiente para que já não necessite de permissões detalhadas, pode ser implementado um processo de limpeza do ambiente e, em seguida, o número de itens no âmbito pode ser ajustado para melhorar a escalabilidade do ambiente a longo prazo. As recomendações a seguir descrevem a limpeza do ambiente e as alterações de segurança da arquitetura que são necessárias para obter essa solução.
Limpeza de segurança do ambiente
Quando um usuário é removido do escopo de nível da Web, o Modelo de Objeto interno deve remover o usuário de todos os escopos abaixo do nível da Web. Remover usuários individuais para limpar as permissões existentes é um processo demorado. Em vez disso, primeiro remova cada escopo de nível de item exclusivo para que o item fique configurado para herdar permissões de seu objeto pai. Como ele tem que agir em um único escopo do item, demorará menos do que tentar remover usuários primeiro.
Importante
Se a Web atual não estiver na raiz do conjunto de sites, e se estiver definida para herdar permissões de seu site pai, todos os escopos exclusivos sob ela serão removidos e todas as associações de Acesso Limitado serão substituídas ao mesmo tempo e de uma só vez no SQL Server.
Após todos os escopos do nível do item serem removidos, as associações de escopo individuais no escopo de nível da Web poderão ser substituídas por uma ou mais associações de grupo para permitir o acesso.
Novo design de arquitetura de segurança do ambiente
Depois que as permissões refinadas e escopos existentes forem removidos, o plano de arquitetura de longo prazo deverá focar-se em manter um escopo exclusivo somente no nível da Web. O diagrama a seguir mostra como isso pode ser estruturado para que somente o escopo do nível da Web permaneça. O requisito principal na arquitetura não é ter demasiados itens ao mesmo nível da hierarquia nas bibliotecas de documentos, porque o tempo necessário para processar itens nas vistas aumenta.
Resolução:
A contagem máxima de itens ou pastas em qualquer nível da hierarquia deve ser de aproximadamente 2.000 itens.
Se forem necessárias mais alterações à arquitetura, considere mover bibliotecas de documentos para diferentes webs ou coleções de sites. O número de bibliotecas de documentos também poderia ser alterado para acompanhar mais de perto as necessidades de negócios e recomendações de dimensionamento baseados na taxonomia ou na audiência do conteúdo armazenado.
Problema 2: Usar permissões refinadas pelas alterações da estrutura hierárquica
Para rearquitetar o ambiente para que ainda utilize permissões detalhadas, mas sem causar demasiadas atualizações ou dimensionamento de um único âmbito Web, considere mover bibliotecas de documentos protegidas de forma diferente para diferentes Webs.
Novo design da hierarquia do ambiente
No diagrama seguinte, a arquitetura física foi alterada para que cada biblioteca de documentos esteja numa Web com permissões exclusivas. Além disso, quando as permissões detalhadas ao nível do item têm de ser preservadas, como melhor prática, o número cumulativo de principais de segurança a quem será concedido acesso deve ser limitado a aproximadamente 2000, embora este não seja um limite fixo. Portanto, a associação efetiva de cada Web, que inclui todos os usuários de membros de Acesso Limitado, não deve ser maior do que aproximadamente 2.000 usuários. Isso evitará que os escopos do nível da Web fiquem muito grandes.
O número de crianças com âmbito exclusivo não é um problema significativo e pode ser dimensionado para um grande número. No entanto, o número de princípios que serão adicionados como acesso limitado à cadeia de escopos para a primeira Web com permissões exclusivas será um fator de limitação.
Por fim, embora não sendo especificamente um problema nas permissões refinadas, a estrutura da pasta deverá garantir que nenhum nível hierárquico da biblioteca de documentos jamais exceda cerca de 2.000 itens. Esse limite pode ajudar a garantir um bom desempenho dos modos de exibição solicitados pelos usuários.
Problema 3: Usar permissões refinadas pelas alterações da estrutura do escopo
Para rearquitetar o ambiente de modo a continuar a utilizar permissões detalhadas, mas sem causar demasiadas atualizações ou dimensionamento de um único âmbito Web, considere utilizar um processo diferente de proteger itens. Isto é aplicável se a causa do grande número de âmbitos exclusivos tiver sido um processo automatizado, como um processador de eventos ou um fluxo de trabalho que alterou dinamicamente as permissões de objetos. Nesse caso, a recomendação é realizar uma alteração de código em todos os processos que estiverem criando os escopos de segurança exclusivos.
A segurança dinâmica alterando a reformulação da código
No diagrama seguinte, a arquitetura de âmbito foi alterada para que a associação de âmbito não cause o recálculo da ACL na biblioteca de documentos principal e na Web. Conforme mencionado anteriormente, a associação efetiva da Web, que inclui todos os membros de Acesso Limitado, não deve ser mais do que aproximadamente 2.000 usuários para evitar que o escopo de nível da Web fique muito grande. Neste caso, ao implementar um novo grupo do SharePoint para manter todos os membros que devem ter direitos de Acesso Limitado, o âmbito não irá crescer muito. Quando os utilizadores são adicionados a âmbitos individuais ao nível da Web através do método SPRoleAssignmentCollection.AddToCurrentScopeOnly do SharePoint Server, também podem ser adicionados, através de código adicional, ao novo grupo que foi estabelecido como tendo direitos de Acesso Limitado ao nível da biblioteca de documentos e web.
Resolução:
Quando as permissões detalhadas ao nível do item têm de ser preservadas, o número cumulativo de principais de segurança a quem será concedido acesso deve ser limitado a cerca de 2000, embora este não seja um limite fixo. Quando o número de principais de segurança aumenta, demora mais tempo a recalcular a ACL binária. Se a associação de um escopo for alterada, a ACL binária precisará ser recalculada. A adição de usuários a um escopo exclusivo de item filho fará com os escopos pai sejam atualizados com os novos membros de Acesso Limitado, mesmo que isso basicamente não resulte em alteração na associação do escopo pai. Quando isso ocorre, a ACL binária dos escopos pai também precisa ser recalculada.
Tal como na solução anterior, o número de subordinados com âmbito exclusivo não é um problema significativo e pode ser dimensionado para grandes números. O número de princípios que serão adicionados como acesso limitado à cadeia de âmbitos à primeira Web com permissões exclusivas será um fator limitador.
Confira também
Outros recursos
Práticas recomendadas para uso das permissões refinadas no SharePoint Server