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

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.