0
votes

I am trying to implement SCIM auto-provisioning.

I have an endpoint in Java Spring for HTTP method POST with path /User

My site URL is www.SampleScim.com and this endpoint is configured in Azure SCIM provisioning by following the below steps

Creating APP:

  1. launched the Azure management portal at
    https://manage.windowsazure.com.
  2. Browse to Active Directory > Directory > My Directory > Applications, and select Add > Add an application from the gallery.
  3. Select the Custom tab on the left, enter a name as SampleSCIM for my application, and clicked the checkmark icon to create an app object.

Configuring endpoint in App:

  1. In the resulting screen, select the second Configure account provisioning button.
  2. In the Provisioning Endpoint URL field, enter the URL SCIM endpoint as www.SampleScim.com/ and left Authentication Token (optional) field blank.
  3. Clicked on Next through to the final step.

My Java Controller is as below.

    @RequestMapping(value = "/Users", method = RequestMethod.POST)
    @ResponseStatus(HttpStatus.CREATED)
    @ResponseBody
    public ScimUser createSCIMUser(@RequestBody ScimUser user, HttpServletRequest request, HttpServletResponse response) {
        
         if (LOGGER.isInfoEnabled()) {
                LOGGER.info(requestId + ": ------------------Inside createSCIMUser Entry ----------------------:\n" );
            }
        
        if (LOGGER.isInfoEnabled()) {
            LOGGER.info(requestId + ": ------------------Inside createSCIMUser Exit ----------------------:\n ");
        }
        return user;
    }

I am not able to see my endpoint (/Users) is getting triggered whenever I add a user in Azure.

Complete endpoint URL: www.SampleScim.com/Users.

1
Your description is too simple for me. I don't know what your real issue was, only no any json from your endpoint is not enough. Could you post more details about what you did? What's the SCIM Java SDK you used? Such as Spring Security, UnboundID SCIM 2 SDK for Java, etc, you can refer to the SO thread stackoverflow.com/questions/7287659/… to know more. And I suggest you can try to refer to the Azure offical document about SCIM with Azure AD docs.microsoft.com/en-us/azure/active-directory/….Peter Pan
@PeterPan-MSFT have updated more details for thisRasmi
@PeterPan-MSFT any help, Please!Rasmi

1 Answers

0
votes

According to the #46 page of the slide Identity Management with Spring Security, it said SCIM is not implemented in Spring. So just via the code you post, I don't know how you implemented SCIM endpoint using Spring, or implement the feature by yourself in other codes.

The code of your Java controller seems to only implement the feature of Creating Resources of the SCIM 2.0 protocol specification. Just as references, I suggested you can refer to the two projects (okta-scim-java-beta and SCIM 2.0 SDK for Java) on GitHub to improve your code.

Hope it helps.