Azure Relay-autentisering och auktorisering

Det finns två sätt att autentisera och auktorisera åtkomst till Azure Relay-resurser: Microsoft Entra ID och signaturer för delad åtkomst (SAS). Den här artikeln innehåller information om hur du använder dessa två typer av säkerhetsmekanismer.

Microsoft Entra ID

Microsoft Entra-integrering för Azure Relay-resurser ger rollbaserad åtkomstkontroll i Azure (Azure RBAC) för detaljerad kontroll över en klients åtkomst till resurser. Du kan använda Azure RBAC för att bevilja behörigheter till ett säkerhetsobjekt, som kan vara en användare, en grupp eller ett huvudnamn för programtjänsten. Säkerhetsobjektet autentiseras av Microsoft Entra-ID för att returnera en OAuth 2.0-token. Token kan användas för att auktorisera en begäran om åtkomst till en Azure Relay-resurs.

Mer information om autentisering med Microsoft Entra-ID finns i följande artiklar:

Viktigt!

Att auktorisera användare eller program med OAuth 2.0-token som returneras av Microsoft Entra ID ger överlägsen säkerhet och användarvänlighet för signaturer för delad åtkomst (SAS). Med Microsoft Entra-ID behöver du inte lagra token i koden och riskera potentiella säkerhetsrisker. Vi rekommenderar att du använder Microsoft Entra-ID med dina Azure Relay-program när det är möjligt.

Inbyggda roller

För Azure Relay skyddas redan hanteringen av namnområden och alla relaterade resurser via Azure-portalen och AZURE-resurshanterings-API:et med hjälp av Azure RBAC-modellen. Azure tillhandahåller de inbyggda Azure-rollerna nedan för att auktorisera åtkomst till ett Relay-namnområde:

Roll Description
Azure Relay-ägare Använd den här rollen för att ge fullständig åtkomst till Azure Relay-resurser.
Azure Relay-lyssnare Använd den här rollen för att bevilja läsbehörighet för lyssning och entitet till Azure Relay-resurser.
Azure Relay-avsändare Använd den här rollen för att bevilja läsbehörighet för skicka och entitet till Azure Relay-resurser.

Signatur för delad åtkomst

Program kan autentisera till Azure Relay med hjälp av SAS-autentisering (Signatur för delad åtkomst). SAS-autentisering gör det möjligt för program att autentisera till Azure Relay-tjänsten med hjälp av en åtkomstnyckel som konfigurerats i Relay-namnområdet. Du kan sedan använda den här nyckeln för att generera en signaturtoken för delad åtkomst som klienter kan använda för att autentisera till relay-tjänsten.

MED SAS-autentisering kan du ge en användare åtkomst till Azure Relay-resurser med specifika rättigheter. SAS-autentisering omfattar konfiguration av en kryptografisk nyckel med associerade rättigheter för en resurs. Klienter kan sedan få åtkomst till resursen genom att presentera en SAS-token, som består av resurs-URI:n som används och ett utgångsdatum som har signerats med den konfigurerade nyckeln.

Du kan konfigurera nycklar för SAS på ett Relay-namnområde. Till skillnad från Service Bus-meddelanden stöder Relay Hybrid Anslut ions obehöriga eller anonyma avsändare. Du kan aktivera anonym åtkomst för entiteten när du skapar den, enligt följande skärmbild från portalen:

A dialog box titled

Om du vill använda SAS kan du konfigurera ett SharedAccessAuthorizationRule-objekt på ett Relay-namnområde som består av följande egenskaper:

  • KeyName som identifierar regeln.
  • PrimaryKey är en kryptografisk nyckel som används för att signera/verifiera SAS-token.
  • SecondaryKey är en kryptografisk nyckel som används för att signera/validera SAS-token.
  • Rättigheter som representerar samlingen Avlyssnings-, Skicka- eller Hantera-rättigheter som beviljats.

Auktoriseringsregler som konfigurerats på namnområdesnivå kan ge åtkomst till alla reläanslutningar i ett namnområde för klienter med token signerade med hjälp av motsvarande nyckel. Upp till 12 sådana auktoriseringsregler kan konfigureras på ett Relay-namnområde. Som standard konfigureras en SharedAccessAuthorizationRule med alla rättigheter för varje namnområde när den först etableras.

För att få åtkomst till en entitet kräver klienten en SAS-token som genereras med hjälp av en specifik SharedAccessAuthorizationRule. SAS-token genereras med hjälp av HMAC-SHA256 för en resurssträng som består av den resurs-URI som åtkomsten begärs till och en förfallodatum med en kryptografisk nyckel som är associerad med auktoriseringsregeln.

SAS-autentiseringsstöd för Azure Relay ingår i Azure .NET SDK-versionerna 2.0 och senare. SAS innehåller stöd för en SharedAccessAuthorizationRule. Alla API:er som accepterar en anslutningssträng som en parameter innehåller stöd för SAS-anslutningssträng.

Exempel

Nästa steg