Ověřování a autorizace trvalých připojení SignalR
Patrick Fletcher, Tom FitzMacken
Upozornění
Tato dokumentace není určená pro nejnovější verzi služby SignalR. Podívejte se na ASP.NET Core SignalR.
Toto téma popisuje, jak vynutit autorizaci u trvalého připojení. Obecné informace o integraci zabezpečení do aplikace SignalR najdete v tématu Úvod do zabezpečení.
Verze softwaru použité v tomto tématu
- Visual Studio 2013
- .NET 4.5
- SignalR verze 2
Předchozí verze tohoto tématu
Informace o starších verzích služby SignalR najdete v tématu Starší verze služby SignalR.
Dotazy a komentáře
V komentářích v dolní části stránky nám napište, jak se vám tento kurz líbil a co bychom mohli zlepšit. Pokud máte dotazy, které nesouvisejí přímo s kurzem, můžete je publikovat na fóru ASP.NET SignalR nebo StackOverflow.com.
Vynucení autorizace
Pokud chcete vynutit autorizační pravidla při použití PersistentConnection , musíte přepsat metodu AuthorizeRequest
. Atribut nemůžete použít Authorize
s trvalými připojeními. Metoda AuthorizeRequest
je volána rozhraním SignalR Před každým požadavkem, aby se ověřilo, že uživatel má oprávnění k provedení požadované akce. Metoda AuthorizeRequest
není volána z klienta. Místo toho ověřujete uživatele prostřednictvím standardního mechanismu ověřování vaší aplikace.
Následující příklad ukazuje, jak omezit požadavky na ověřené uživatele.
public class AuthenticatedConnection : PersistentConnection
{
protected override bool AuthorizeRequest(IRequest request)
{
return request.User.Identity.IsAuthenticated;
}
}
V metodě AuthorizeRequest můžete přidat libovolnou vlastní autorizační logiku. například kontrola, jestli uživatel patří do určité role.