AuthenticationException: Authentication failed, see inner exception
CENÁRIO:
Olá!
De uns tempos pra cá meu Mac (OSX) parou de funcionar a funcionalidade de rodar aplicações “localhost” com HTTPS embutido no ASP.NET Core.
Pra contornar, estava montando o Kestrel com certificado auto assinado gerado por mim mesmo (https://docs.microsoft.com/pt-br/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.2#kestrel-options), mas o outro jeito era tão mais fácil e simples que resolvi procurar e há um jeito de resolver! J
ERRO:
Deixando default, e tentando acessar a URL “localhost” com HTTPS obtinha a seguinte mensagem de erro:
fail: Microsoft.AspNetCore.Server.Kestrel[0]
Uncaught exception from the OnConnectionAsync method of an IConnectionAdapter.
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. —> Interop+AppleCrypto+SslException: Internal error
— End of inner exception stack trace —
SOLUÇÃO:
Para resolver, há um comando do próprio dotnet para corrigir os certificados e voltar a funcionar tudo perfeitamente:
dotnet dev-certs https
No meu mac, não resolveu de primeira. Tive que limpar os certificados antes com este comando:
dotnet dev-certs https –clean
e depois:
dotnet dev-certs https
Pronto!
Tudo funcionando perfeitamente novamente. 🙂
Abraço!
Cadê o telnet que tava aqui?!
Depois de muito enrolar (foi lançado em Setembro/2017 – Link), resolvi fazer o upgrade do sistema operacional do meu Mac para o High Sierra (10.13.3).
E algumas coisas pararam de funcionar… como meu .Net Core SDK 1.1. Mas com a ajuda do Romanão que já tinha feito o upgrade… vi que era só atualizar/instalar o .Net Core SDK 1.1 novamente que ele voltaria a funcionar e funcionou! 🙂
Nas atividades corriqueiras do dia-a-dia precisei verificar a conectividade com uma aplicação e vamos ao primeiro teste de conectividade:
[16:00:39] – [Thiago ~]$ telnet
-bash: telnet: command not found
WTF?! command not found?!
https://discussions.apple.com/thread/8103628 – Foi removido mesmo.
Mas, ainda tem o telnet no homebrew! Ufa!
Eu já tinha o homebrew, mas se você precisar instalar, é só rodar esse comando:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Outras informações sobre o homebrew: https://brew.sh/index_pt-br.html
Com o ele, podemos instalar o telnet com o seguinte comando:
brew install telnet
Abraço!
Debug adapter process has terminated unexpectedly VS Code
CENÁRIO:
Na vida usando, e usando muito, o Visual Studio Code com projeto .NET Core, fui debugar meu projeto… mas deu erro 😥
Deu erro pra DEBUGAR?! WFT?!
Pra quem quiser começar a experimentar o Visual Studio Code: https://code.visualstudio.com/
Estou bem satisfeito usando no Mac OS. É muito rápido! Sublime virou só bloco de notas mesmo. Rs
ERRO:
Debug adapter process has terminated unexpectedly
SOLUÇÃO:
Fechei e abri o VS Code e reiniciei o Mac (depois de várias semanas, mas é preciso) e nada resolveu.
Pesquisando um pouco, descobri que tem um console do Visual Studio Code que não é o habitual da “IDE”, onde estava procurando por erros:
Mas nada de mensagem de erro nesses console.
Então, descobri este outro console “F12” do Visual Studio Code:
Help > Toggle Developer Tools
Neste console havia um erro informando que não conseguia achar o “c# extension asset”. Então, pra resolver, desinstalei e instalei novamente o C# Extension do Visual Studio Code.
Com isso, ele reinstalou o debugger e tudo voltou a funcionar! J
Abraço!
Rodando MSSQL Server on Linux no Mac usando Docker
CENÁRIO:
Depois de instalar o .NET Core, agora fazer uns “programa” que lê uns arquivos… acessa banco de dados… Hum, acessar banco? Vamos instalar o SQL Server on Linux! 😀
Se você perdeu a parte do .NET Core, ta aqui:
https://thiagottss.com.br/2017/05/07/instalando-net-core-no-mac-usando-docker/
Me surpreendi com a facilidade e agilidade de utilizar os containers “prontos” no Docker. Muito bom mesmo.
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-docker
Vamos lá!
Primeiro, vamos puxar a imagem no Docker Hub da Microsoft:
docker pull microsoft/mssql-server-linux
Agora, instalar/rodar o container:
docker run -e ‘ACCEPT_EULA=Y’ -e ‘SA_PASSWORD=<YourStrong!Passw0rd>’ -p 1433:1433 -d microsoft/mssql-server-linux
Pronto! Você já está com o MSSQL Server on Linux rodando no Docker.
Agora é conectar e rodar seus comandos no SQL Server. Utilize o Management Studio para conectar no SQL do Docker, ou se preferir, ainda no Mac, pode usar o sql-cli para conectar. Ou utilizar o Visual Studio Code também! J
Para instalar o sql-cli você precisa do Node.js:
https://github.com/creationix/nvm
Instalar o sql-cli:
npm install -g sql-cli
Com o sql-cli:
Mssql –help
mssql –u sa –p senha
Com o Visual Studio Code:
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-develop-use-vscode
Abraço!
Instalando .Net Core no MAC usando Docker
CENÁRIO:
Sempre utilizei o Visual Studio para todas as atividades de código, mas desde que a Microsoft lançou .NET Core e Visual Studio Code procurei testar e rodar alguns códigos diretamente no Mac OS.
Ainda acho o Visual Studio muito mais produtivo e mais completo, mas devemos sempre nos manter atualizados com as novas tecnologias.
De início, instalar o .Net Core CLI diretamente no Mac OS, mas agora vou mostrar como instalar o .Net Core no Docker!
Ainda utilizo bem pouco o Docker, mas tenho gostado bastante de ter containers para realizar algumas atividades sem precisar instalar coisas no sistema operacional.
Vamos lá!
Primeiro instale o Docker, caso ainda não o tenha:
https://www.docker.com/docker-mac
Instalar o .NET Core via Docker é muito simples!
https://www.microsoft.com/net/core#dockercmd
docker run -it microsoft/dotnet:latest
Esse comando irá baixar e instalar o .Net Core container diretamente do Docker Hub da Microsoft.
Uma vez instalado e rodando, você já estará dentro do container e pode rodar alguns comandos do .NET Core. Tente alguns:
Dotnet –version
dotnet –info
Exit
Até aqui eu fui bem tranquilo, mas e agora se eu quiser voltar para o contexto do container?
Demorei um pouco lendo a documentação do Docker, mas encontrei 2 modos de voltar ao contexto do container. Mas antes, utilize o Kitematic para verificar as configurações e nomes dos seus containers.
Você pode iniciar o container pelo Kitematic e/ou utilizar o comando:
Para entrar no contexto do container:
Docker attach netcore
O comando attach permite que entre no contexto do terminal que você está, mas se abrir um novo terminal.. não será possível. Então utilize este outro comando para entrar no contexto em qualquer terminal:
Docker exec –i –t netcore /bin/bash
E é isso, agora você tem o .NET Core rodando no Mac utilizando Docker.
Abraço!