
Descrição do cenário:
No meu local de trabalho, temos um DomainController
e usamos TerminalServices
. Existem diferentes tipos de servidores em execução no DC (por exemplo webapi
, , app
). Os desenvolvedores que desenvolvem a API desejam acessar uma pasta (ou seja, app\images
) por meio de uma URL direcionada para webapi
. Então pensei que poderia conseguir isso com links simbólicos.
Eu criei um link simbólico \\DC\webserver\symed_images
apontando para o alvo\\DC\appserver\images
o caminho completo de webapi
in DC
éD:\webserver
o caminho completo do app
no DC
éD:\ProgramFiles\app
Além disso, ambos D:\ProgramFiles\app
são D:\webserver
pastas compartilhadas na rede.
Criei os links simbólicos logados como administrador no arquivo DC
. Pensando que seria mais fácil, usei oExtensão de shell de linkferramenta.
O problema
Depois de criar os links simbólicos, eles funcionam bem se alguém estiver logado com direitos de administrador no arquivo DC
. No entanto, se alguém tentar acessar o link simbólico dos serviços de terminal navegando até o compartilhamento de rede DC\webserver\symed_images
, o usuário receberá um erro. Além disso, ocorre um erro se o navegador da web for usado.
A questão
Como você disponibiliza um URL de uma pasta vinculada a outra pasta via link simbólico e garante que todos os usuários tenham acesso a essa pasta?
Algumas coisas a considerar
Aqui escreverei algumas coisas que podem ser importantes a serem consideradas se você fornecer uma resposta: permissões de compartilhamento, permissões de segurança da pasta compartilhada, criação de link simbólico, namespaces DFS.
Atualização da solução 1:
OK, depois de ler os links sugeridos e fazer um pouco de pesquisa online, funcionou para mim depois de criar uma junção.
Usei o seguinte comando:mklink /J "D:\webserver\symed_images" "D:\ProgramFiles\app\images"
Observe que o diretório que atuará como junção ( symed_images
) neste caso, não deveria existir anteriormente. Ele será criado automaticamente assim que o comando for executado.
Perguntas após a edição
Agora a junção funciona bem para quem tenta acessá-la via Windows Explorer, mas quando um navegador é usado, o servidor retorna:Server Error 403 - Forbidden: Access is denied. You do not have permission to view this directory or page using the credentials that you supplied.
Qual poderia ser o problema neste caso? Como tornar este link acessível via navegador?
Quais propriedades de segurança e compartilhamento se aplicam à junção "D:\webserver\symed_images
? As propriedades da pasta na qual está localizado D:\webserver
? ou as propriedades da pasta à qual ele se destina D:\ProgramFiles\app\images
?