EM FORMAÇÃO:
Tenho uma situação em que sou forçado a usar um servidor (Windows 2012 R2) que NÃO faz parte de um domínio e NÃO possui AD. Esta não é minha escolha, não é ideal, mas está fora de meu controle.
Também tenho usuários locais que se conectam a este servidor através do RDP, e os usuários locais têm uma política de expiração de senha.
Como o AD / Exchange não faz parte da imagem, os usuários não recebem nenhuma notificação de que suas senhas estão prestes a expirar.
PROBLEMA: O problema é quando a senha de um usuário expirou e eles tentam fazer login usando uma Conexão de Área de Trabalho Remota. Não permite que eles alterem sua senha.
Desmarquei a opção "Permitir conexões somente de computadores executando a Área de trabalho remota com autenticação no nível da rede" no lado do servidor, para que o servidor NÃO exija NLA das sessões RDP recebidas.
No entanto, ao usar o Gerenciador de Conexão da Área de Trabalho Remota do Windows, parece estar forçando o NLA.
Se eu estiver usando o cliente de área de trabalho remota "Terminais", existe uma opção no lado do cliente para desativar o uso de "Autenticação no nível da rede". Se eu desabilitar o NLA através do cliente Terminais e me conectar ao servidor, ele permitirá que eu altere a senha expirada dos usuários.
PERGUNTA: Estou supondo, talvez incorretamente, que o programa Terminals esteja apenas sobre os protocolos de Conexão da Área de Trabalho Remota do Windows e que, se você puder desabilitar o lado do cliente de Autenticação no Nível de Rede através do programa Terminals, também poderá desative isso através do Gerenciador de Conexão da Área de Trabalho Remota interno do Windows. Infelizmente, não vejo essa opção na GUI do gerenciador de conexões e não vejo parâmetros nos arquivos ".RDP" específicos do NLA.
Se eu clicar em "Sobre" no Gerenciador de Conexão da Área de Trabalho Remota do lado do cliente, ele informa que "Autenticação no nível da rede é suportada". A redação me leva a acreditar que o uso é opcional, mas, novamente, não vejo como desativá-lo no gerenciador de conexões. BTW, esse gerenciador de conexões em particular é a v10.
Respostas:
Você pode resolver isso com uma abordagem em duas frentes:
1. Instale a função Acesso via Web RD e ative a opção de alteração remota de senha
As instruções a seguir são do artigo woshub.com Permitir que os usuários redefinam a senha expirada via RD WebAccess no Windows Server 2012 :
No Windows 2012/2012 R2, apareceu uma opção que permite que um usuário remoto altere sua senha (atual ou expirada) usando uma página da Web especial no servidor RD Web Access. A senha será alterada da seguinte maneira: um usuário fará login na página da Web de registro no servidor com a função Acesso via Web RD e altera sua senha usando um formulário especial.
Uma opção de alteração remota de senha está disponível no servidor com a função Acesso via Web à Área de Trabalho Remota (Acesso via Web RD), mas está desativada por padrão. Para alterar uma senha, é usado um script password.aspx , localizado em C: \ Windows \ Web \ RDWeb \ Pages \ en-US .
Para habilitar a opção de alteração de senha, no servidor com a função RD Web Access configurada, abra o console do Gerenciador do IIS, vá para [Nome do Servidor] -> Sites -> Site Padrão -> RDWeb -> Páginas e abra a seção Configurações do Aplicativo .
No painel direito, localize o parâmetro PasswordChangeEnabled e altere seu valor para true .
Você pode testar o mecanismo de alteração de senha, acessando a seguinte página da web:
https: //RDSServerName/RDWeb/Pages/en-US/password.aspx
Agora, ao tentar se conectar ao servidor RD Web Access com a senha expirada, um usuário será redirecionado para a página da web password.aspx e oferecido para alterar sua senha.
Dica . O mesmo recurso do Windows Server 2008 R2 pode se tornar disponível após a instalação de um patch especial - KB2648402 .
2. Ativar prompts notificando os usuários sobre a expiração de senha pendente
gpedit.msc
no servidor RDSH para abrir a Diretiva de Grupo LocalComputer Configuration\Windows Settings\Local Policies\Security Options
fonte
Acontece que isso é controlado através de uma propriedade não listada no arquivo de configuração .RDP chamado "enablecredsspsupport". Ao definir como "0", ele carrega a página de login em uma sessão RDP e permite que o usuário altere sua senha expirada.
A sintaxe exata necessária no arquivo de configuração .RDP é:
Se você precisar de mais referências ou leitura, acesse aqui: A Tirania da Autenticação no Nível da Rede e do CredSSP
fonte
Nenhuma das opções funcionou para mim desde que eu tenho o NLA ativado. Aqui está uma maneira de alterá-lo via PowerShell - história completa em Como alterar sua própria senha expirada quando você não pode fazer login no RDP .
Basta executar
Set-PasswordRemotely
e ele fará 4 perguntas - nome de usuário, senha antiga, nova senha, controlador de domínio e alterará a senha para você. Também funciona a partir de PCs não pertencentes ao domínio. Requer conectividade com o DC.fonte