Verificatie en autorisatie voor permanente SignalR-verbindingen

door Patrick Fletcher, Tom FitzMacken

Waarschuwing

Deze documentatie is niet voor de nieuwste versie van SignalR. Bekijk ASP.NET Core SignalR.

In dit onderwerp wordt beschreven hoe u autorisatie afdwingt voor een permanente verbinding. Zie Inleiding tot beveiliging voor algemene informatie over het integreren van beveiliging in een SignalR-toepassing.

Softwareversies die in dit onderwerp worden gebruikt

Vorige versies van dit onderwerp

Zie SignalR Oudere versies voor meer informatie over eerdere versies van SignalR.

Vragen en opmerkingen

Geef feedback over hoe u deze zelfstudie leuk vond en wat we konden verbeteren in de opmerkingen onder aan de pagina. Als u vragen hebt die niet rechtstreeks zijn gerelateerd aan de zelfstudie, kunt u deze posten op het ASP.NET SignalR-forum of StackOverflow.com.

Autorisatie afdwingen

Als u autorisatieregels wilt afdwingen wanneer u een PersistentConnection gebruikt, moet u de AuthorizeRequest methode overschrijven. U kunt het Authorize kenmerk niet gebruiken met permanente verbindingen. De AuthorizeRequest methode wordt aangeroepen door signalR Framework voordat elke aanvraag om te controleren of de gebruiker gemachtigd is om de aangevraagde actie uit te voeren. De AuthorizeRequest methode wordt niet aangeroepen vanaf de client. In plaats daarvan verifieert u de gebruiker via het standaardverificatiemechanisme van uw toepassing.

In het onderstaande voorbeeld ziet u hoe u aanvragen voor geverifieerde gebruikers kunt beperken.

public class AuthenticatedConnection : PersistentConnection 
{ 
    protected override bool AuthorizeRequest(IRequest request) 
    { 
        return request.User.Identity.IsAuthenticated; 
    } 
}

U kunt aangepaste autorisatielogica toevoegen in de methode AuthorizeRequest; bijvoorbeeld om te controleren of een gebruiker deel uitmaakt van een bepaalde rol.