User provisioning and Insight Integration of LDAP users

We have a client instance that wants to have user provisioning from an internal LDAP server, including having user info in Insight, into their cloud environment.

We found that there are public API’s of Atlassian that provides this kind of functionalities, but we also heard that the authentication method for this API’s (now Basic Authentication) is going to be deprecated due to it’s multiple security deficiences.

We found that we can do User provisioning using the API and also filling insight objects with this information, which is also a requirement from the client, but we have short time to implement it and would like to have knowledge about which would be preferable to do on the development.

Insight API’s: https://developer.atlassian.com/cloud/insight/rest/api-group-object/#api-object-id-get
Atlassian Access User Management API: https://developer.atlassian.com/cloud/admin/user-management/rest/api-group-users/
Atlassian Access User and group provisioning API: h ttps://developer.atlassian.com/cloud/admin/user-provisioning/rest/api-group-users/

The development that we are thinking about will run on a client internal server that has access to both, LDAP server and the cloud Instance through the Internet (middleware), so this application that is a blocker for the client to migrate to cloud, would be a help to bring this functionality.

Which would be the better way to Implement this solution?
We’re thinking in 2 Ways:

  • Java application that have a configuration file where you introduce all the data (with basic authentication to the REST API’s)
  • Node.js Application that allows implementation of Oauth for user Auth to the API.

If there is another way to do this, we would like to know.
Thank you all beforehand.