SignalR을 사용하여 폼 인증 또는 Windows 인증을 수행하는 방법에 대한 정보가 많이 있습니다. 나는 나의 자신의 인증 DB 사용에 관심이있다. 연결 에이전트는 웹 브라우저가 아닌 웹 브라우저이기 때문에 .NET 클라이언트를 사용합니다. 내가 이상적으로 내 클라이언트 코드를 사용하고 싶습니다 :SignalR (.NET 클라이언트)에서 사용자 정의 기본 인증을 사용하려면 어떻게해야합니까?
hubConnection.Credentials = new NetworkCredential(userName, password);
그리고 내 서버 코드가 허브에 [권한 부여]를 사용하고, 나에게 사용할 수 Context.User을 가지고. 모든 통신은 https를 초과하므로 일반 텍스트는 신경 쓰지 않습니다.
나는 IHttpModule을 사용하여 인증 메커니즘을 재정의하는 방법을 보여줍니다 asp.net basic authentication 가이드를 읽었습니다. 그러나 'Authorization'헤더는 HttpModule에서 코드를 중단 할 때 .NET SignalR 클라이언트에서 오는 요청에 설정되지 않습니다.
내가 인증 서버에서 발생하는 방법을 하찮게 최대 사용자 이름과 클라이언트에서 비밀번호와 코드를 통과하면된다 할 수 있기를 바랍니다. 그렇게 어려운가요? 마술은 없다. Active Directory가 없습니다. 그냥 날 인증.
나의 현재, 작업, 접근 방식은 그러나 분명히 '을 할 수있는 올바른 방법'권한 수준에서 대신 인증을하지 않는 것입니다 (사용자 정의 AuthorizeAttribute 사용) SignalR 수준에서 해석하는 사용자 정의 헤더를 설정하는 것입니다 어떤 웹 서버라도 SignalR이 발생하기 전에 그렇게해야합니다.
사람은 전체를 위해 좋은 절차를 설명하지만, 먼지 단순, 사용자 지정 인증시겠습니까?
영형 당신이 스스로 접대한다면 우승 할거야, 그렇지? 나는 IIS에서 호스팅하고있을거야 app.Anything() 생각하지 않습니다. 내가 거기 아니다 놀랍 단지 '는 ValidateUser 방법을 제공하고 당신이 가고 떨어져' – Robin
당신은 내가 Microsoft.Owin.Security.Basic NuGet 패키지에 대한 모든 일을 찾고 있었어요 Owin는 IIS –
에서 호스팅 할 수 있습니다. 더 이상 nuget.org에 없습니다. 다른 NuGet 서버에 있습니까? Katana 프로젝트 사이트에서이 패키지는 2.0.0.0 버전으로 출시되었다고합니다. 도와 주셔서 감사합니다. –