SourceOne para sistemas de arquivos: Os usuários não podem recuperar arquivos com permissões "Meus arquivos"

Summary: SourceOne para sistemas de arquivos: Os usuários não podem recuperar arquivos com permissões "Meus arquivos"

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms



SourceOne para sistemas de arquivos: Os usuários não podem recuperar arquivos com as permissões da pasta mapeada "Meus arquivos" atribuídas ao grupo do AD Usuários do domínio.
Embora se estiver usando a identidade da conta de serviço, todos os atalhos de arquivo poderão ser acessados. No entanto, todos os usuários padrão não podem acessar nenhum arquivo, a menos que suas permissões de acesso sejam especificadas diretamente nas permissões NTFS no próprio arquivo antes que o arquivo seja arquivado e atalho (usando o instantâneo de permissões do sistema de arquivos).

Após uma falha ao recuperar, você verá o seguinte no log Docmanageservice:
DocumentService::D oGetMessage|ERRO|Erro GetMessage: Código de erro: 0x80070005, Pasta: xxxxxxxx Acesso negado. (Exceção do HRESULT: 0x80070005 (E_ACCESSDENIED)) |(0)|ID do trabalho: -1; Nome da atividade: SERV1551; ID da atividade: -1; Tipo de atividade: -1; Nome do

servidor A Dell EMC tem uma ferramenta de grupo de teste, antiga TestFixForGetAuthorizedGroup.  Isso usa as mesmas classes que o aplicativo SourceOne para estabelecer se a conta de serviço pode ler os grupos do AD onde os usuários residem.
Essa ferramenta usa classes System.DirectoryServices Namespace para localizar os usuários do AD, por exemplo:
var domain = new PrincipalContext(ContextType.Domain);
var user = UserPrincipal.FindByIdentity(domínio, userName);

UserPrincipal upLogonUser = UserPrincipal.FindByIdentity(pc, IdentityType.DistinguishedName, sUserDN);

A menos que essa ferramenta seja executada sob uma Identidade de administrador de domínio, você terá a seguinte exceção:


Texto de exceção **************
System.Runtime.InteropServices.COMException (0x8007200A): O atributo ou valor especificado do serviço de diretório não existe.
em System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
em System.DirectoryServices.DirectoryEntry.Bind()
em System.DirectoryServices.DirectoryEntry.get_SchemaEntry()
em System.DirectoryServices.AccountManagement.ADStoreCtx.IsContainer(DirectoryEntry de)
em System.DirectoryServices.AccountManagement.ADStoreCtx.. ctor(DirectoryEntry ctxBase, Boolean ownCtxBase, String username, String password, ContextOptions options)
at System.DirectoryServices.AccountManagement.PrincipalContext.CreateContextFromDirectoryEntry(DirectoryEntry entry)
at System.DirectoryServices.AccountManagement.PrincipalContext.DoLDAPDirectoryInitNoContainer()
at System.DirectoryServices.AccountManagement.PrincipalContext.DoDomainInit()
at System.DirectoryServices.AccountManagement.PrincipalContext.Initialize()
at System.DirectoryServices.AccountManagement.PrincipalContext.get_QueryCtx()
at System.DirectoryServices.AccountManagement.Principal.FindByIdentityWithTypeHelper(PrincipalContext context, Type principalType, Nullable'1 identityType, String identityValue, DateTime refDate)
em System.DirectoryServices.AccountManagement.Principal.FindByIdentityWithType(PrincipalContext context, Type principalType, String identityValue)
at System.DirectoryServices.AccountManagement.UserPrincipal.FindByIdentity(PrincipalContext context, String identityValue)
at TestFixForGetAuthorizedGroup.Form1.GetUserDistinguishedName(String userName)
at TestFixForGetAuthorizedGroup.Form1.GetUserGroups_Click(Remetente do objeto, EventArgs e)


Além disso, a execução desse script PS1 básico que invoca as mesmas classes retorna o mesmo "O atributo ou valor de serviço de diretório especificado não existe.": error:

$userName = Service account
Add-Type -AssemblyName System.DirectoryServices.AccountManagement
$ct = [System.DirectoryServices.AccountManagement.ContextType]::D omain
$user = [System.DirectoryServices.AccountManagement.Principal]::FindByIdentity($ct,$userName)
$user. GetGroups() #gets todos os grupos de usuários (direto)
$user. GetAuthorizationGroups() #gets todos os grupos de usuários, incluindo grupos aninhados (indiretos)



Cause

https://blogs.msdn.microsoft.com/dsadsi/2009/08/28/getting-an-exception-the-specified-directory-service-attribute-or-value-does-not-exist-when-you-try-to-search-a-user-in-an-ad-container-using-system-directoryservices-accountmanagement/

"Obtendo uma exceção O atributo ou valor especificado do serviço de diretório não existe , quando você tenta pesquisar um usuário em um contêiner do AD usando System.DirectoryServices.AccountManagement.UserPrincipal::FindByIdentity

Isso acontece porque, se não houver nenhum contêiner especificado, a classe de contexto principal criará um objeto System.DirectoryServices.DirectoryEntry vinculando-se ao contêiner interno CN=Users para começar a procurar usuários. System.DirectoryServices é construído sobre o ADSI.  O ADSI, por padrão, faz uma pesquisa objectclass=* como parte de seu processo normal de vinculação, a menos que o indicador fastbind seja especificado.  se o usuário que está realizando a pesquisa não tiver permissão para ler os atributos que os usuários padrão contêm, a operação de pesquisa falhará, fazendo com que o atributo ou valor especificado do serviço de diretório especificado não exista , exceção.

Isso também é verdadeiro ao pesquisar objetos de computador usando ComputerPrincipal::FindByIdentity e você não tem permissão de leitura no contêiner CN=Computer e não especificou um contêiner no construtor de System.DirectoryServices.AccountManagemnt.PrincipalContext. A seção de comentários da documentação em http://msdn.microsoft.com/en-us/library/system.directoryservices.accountmanagement.principalcontext.principalcontext.aspx explica as regras seguidas pela classe PrincipalContext na seleção de um contêiner quando um não foi explicitamente especificado no construtor."

Resolution

Atribua permissão de leitura em grupos do AD.

Affected Products

SourceOne for File Systems

Products

SourceOne, SourceOne Email Management, SourceOne for File Systems
Article Properties
Article Number: 000056717
Article Type: Solution
Last Modified: 26 May 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.