-
Notifications
You must be signed in to change notification settings - Fork 108
Test Your SCIM Endpoint
Provided below are test cases that you can use to ensure that your SCIM endpoint is compliant with the SCIM RFC.
All the endpoints are are at the {host}/scim/ directory and can be interacted with standard HTTP requests. The /scim/ route can be modified in the ControllerConstant.cs file located in AzureADProvisioningSCIMreference > ScimReferenceApi > Controllers. You can use http endpoints for testing locally, but the Azure AD provisioning service requires that your endpoint supports HTTPS.
- Click "Clone or download" and click "Open in Desktop" OR copy the link.
- If you chose to copy the link, open Visual Studio and choose "Clone or check out code.
- Use the copied link from Github to make a local copy of all files.
- The Solution Explorer should open. Navigate to Microsoft.SCIM.sln view by double-clicking on it.
- Click IIS Express to execute. The project will launch as a web page with the local host URL.
-
Download the Postman client.
-
Import the Postman collection by copying the link https://aka.ms/ProvisioningPostman and pasting it into Postman as shown below:
-
Create a Postman environment for testing by specifying the following variables below:
-
If running the project locally using IIS Express:
Variable Value Server localhost Port :44359 (* Don't forget the ':') Api scim -
If running the project locally using Kestrel:
Variable Value Server localhost Port :5001 (* Don't forget the ':') Api scim -
If hosting the endpoint in Azure:
Variable Value Server (Input your SCIM URL) Port (* leave it blank) Api scim
-
If running the project locally using IIS Express:
The SCIM endpoints are secured, before you connecting you need to get a security token. In the sample code, you can use the {host}/scim/token endpoint to generate a self-signed token. Use "Get Key" from the Postman Collection to send a GET request to the token endpoint and retrieve the security token (the resulting token will be stored in the "token" variable and used in the subsequent requests).