Zelfstudie: Een SCIM-voorbeeldeindpunt ontwikkelen in Microsoft Entra-id

In deze zelfstudie wordt beschreven hoe u de SCIM-referentiecode implementeert met Azure-app Service. Test vervolgens de code met postman of door deze te integreren met de Microsoft Entra-inrichtingsservice. De zelfstudie is bedoeld voor ontwikkelaars die aan de slag willen met SCIM of iedereen die geïnteresseerd is in het testen van een SCIM-eindpunt.

In deze zelfstudie leert u het volgende:

  • Implementeer uw SCIM-eindpunt in Azure.
  • Test uw SCIM-eindpunt.

Uw SCIM-eindpunt implementeren in Azure

De stappen hier implementeren het SCIM-eindpunt in een service met behulp van Visual Studio 2019 en Visual Studio Code met Azure-app Service. De SCIM-referentiecode kan lokaal worden uitgevoerd, gehost door een on-premises server of worden geïmplementeerd in een andere externe service. Zie Zelfstudie: Inrichting voor een SCIM-eindpunt ontwikkelen en plannen voor een SCIM-eindpunt voor meer informatie over het inrichten van een SCIM-eindpunt.

De voorbeeld-app ophalen en implementeren

Ga naar de referentiecode van GitHub en selecteer Clone of download. Selecteer Openen in desktop of kopieer de koppeling, open Visual Studio en selecteer Code klonen of uitchecken om de gekopieerde koppeling in te voeren en een lokale kopie te maken. Sla de bestanden op in een map waarin de totale lengte van het pad 260 of minder tekens is.

  1. Zorg ervoor dat u zich in Visual Studio aanmeldt bij het account dat toegang heeft tot uw hostingbronnen.

  2. Open in Solution Explorer Microsoft.SCIM.sln en klik met de rechtermuisknop op het bestand Microsoft.SCIM.WebHostSample . Selecteer Publiceren.

    Screenshot that shows the sample file.

    Notitie

    Als u deze oplossing lokaal wilt uitvoeren, dubbelklikt u op het project en selecteert u IIS Express om het project te starten als een webpagina met een lokale host-URL. Zie IIS Express Overview (Overzicht van IIS Express) voor meer informatie.

  3. Selecteer Profiel maken en zorg ervoor dat App Service en Nieuwe maken zijn geselecteerd.

    Screenshot that shows the Publish window.

  4. Doorloop de dialoogvensteropties en wijzig de naam van de app in een naam van uw keuze. Deze naam wordt gebruikt in zowel de app als de URL van het SCIM-eindpunt.

    Screenshot that shows creating a new app service.

  5. Selecteer de resourcegroep die u wilt gebruiken en selecteer Publiceren.

    Screenshot that shows publishing a new app service.

De App Service configureren

Ga naar de toepassing in Azure-app Serviceconfiguratie> en selecteer Nieuwe toepassingsinstelling om de Token__TokenIssuer-instelling toe te voegen met de waarde.https://sts.windows.net/<tenant_id>/ Vervang door <tenant_id> uw Microsoft Entra-tenant-id. Als u het SCIM-eindpunt wilt testen met postman, voegt u een ASPNETCORE_ENVIRONMENT-instelling toe met de waardeDevelopment.

Screenshot that shows the Application settings window.

Wanneer u uw eindpunt test met een bedrijfstoepassing in het Microsoft Entra-beheercentrum, hebt u twee opties. U kunt de omgeving in Development de omgeving houden en het testtoken van het /scim/token eindpunt opgeven, of u kunt de omgeving wijzigen in Production het tokenveld en het tokenveld leeg laten.

Dat is het! Uw SCIM-eindpunt is nu gepubliceerd en u kunt de Azure-app Service-URL gebruiken om het SCIM-eindpunt te testen.

Uw SCIM-eindpunt testen

Voor aanvragen voor een SCIM-eindpunt is autorisatie vereist. De SCIM-standaard heeft meerdere opties beschikbaar. Aanvragen kunnen gebruikmaken van cookies, basisverificatie, TLS-clientverificatie of een van de methoden die worden vermeld in RFC 7644.

Zorg ervoor dat u methoden vermijdt die niet veilig zijn, zoals gebruikersnaam en wachtwoord, ten gunste van een veiligere methode, zoals OAuth. Microsoft Entra ID ondersteunt bearer-tokens met een lange levensduur (voor galerie- en niet-galerietoepassingen) en de OAuth-autorisatietoekenning (voor galerietoepassingen).

Notitie

De autorisatiemethoden in de opslagplaats zijn alleen bedoeld voor testen. Wanneer u integreert met Microsoft Entra ID, kunt u de autorisatierichtlijnen bekijken. Zie Inrichting plannen voor een SCIM-eindpunt.

De ontwikkelomgeving maakt functies mogelijk die onveilig zijn voor productie, zoals referentiecode om het gedrag van de validatie van het beveiligingstoken te beheren. De tokenvalidatiecode maakt gebruik van een zelfondertekend beveiligingstoken en de ondertekeningssleutel wordt opgeslagen in het configuratiebestand. Zie de parameter Token:IssuerSigningKey in de appsettings. Development.json bestand.

"Token": {
    "TokenAudience": "Microsoft.Security.Bearer",
    "TokenIssuer": "Microsoft.Security.Bearer",
    "IssuerSigningKey": "A1B2C3D4E5F6A1B2C3D4E5F6",
    "TokenLifetimeInMins": "120"
}

Notitie

Wanneer u een GET-aanvraag naar het /scim/token eindpunt verzendt, wordt er een token uitgegeven met behulp van de geconfigureerde sleutel. Dat token kan worden gebruikt als bearer-token voor volgende autorisatie.

De standaardtokenvalidatiecode is geconfigureerd voor het gebruik van een Microsoft Entra-token en vereist dat de verlenende tenant wordt geconfigureerd met behulp van de parameter Token:TokenIssuer in het appsettings.json-bestand .

"Token": {
    "TokenAudience": "8adf8e6e-67b2-4cf2-a259-e3dc5476c621",
    "TokenIssuer": "https://sts.windows.net/<tenant_id>/"
}

Volgende stappen