Announcing the SAVIYNT KNOWLEDGE EXCHANGE unifying the Saviynt forums, documentation, training, and more in a single search tool across platforms. Click HERE to read the Announcement.

How to register a new custom connector?

alc
Regular Contributor
Regular Contributor

Hello Saviynt Expert,

I have followed the Saviynt Connector Framework to develop my own custom connector. To register this connector, the framework guide from freshdesk website describe as below:

https://saviynt.freshdesk.com/support/solutions/articles/43000631141-saviynt-connector-framework-gui...

Registering the Connector in EIC

You must register your connector with EIC in development and production environments. After the connector is registered in the production environment, it is displayed in the Add/Update Connection page.

To register the connector in the development environment, perform the following steps:

1. Upload the sample connector project to EIC.

2. Create a ticket in Freshdesk.

3. Saviynt reviews your sample connector code. If the code passes the validation, your connector is registered in the development environment.

4. Perform the integration testing in the development environment.

Is these steps are necessary? Why can't I just upload the jar file via externalJar directory and use it right away? it will be slow down the process if we go through Saviynt review step.

Could you please confirm these steps are still have to follow?

Thanks,

Alc

9 REPLIES 9

rushikeshvartak
All-Star
All-Star

You can upload jar directly in file directory


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

alc
Regular Contributor
Regular Contributor

Thank you very much Rushikesh for your confirmation. It is great no need to review by Saviynt. I'll try it out.

prasannta
Saviynt Employee
Saviynt Employee

You need to follow the documentation and get the code reviewed by Saviynt Team. This is to ensure that your custom connector code is using the latest standards and have proper logs defined to ensure that Saviynt can provide quality support in case you encounter any issues in future.

alc
Regular Contributor
Regular Contributor

Thanks Prasannta for your remind. Can you have an example code to show me what will be proper log entries to be written?

In addition, since it only support full import/reconcile, my full import would have at least 400,000 records for both accounts and account/entitlement association? do you think it will be accepted by EIC with such large number of records that data size in Java Map probably are 50M?

Thanks for your comment so I can do it property in advance.

prasannta
Saviynt Employee
Saviynt Employee

You can refer this documentation to clone a sample project and start from there.

https://docs.saviyntcloud.com/bundle/SCF_v231/page/Content/Before-You-Begin.htm#Cloning

Logging was just one example of what needs to be reviewed, internally our team would validate the code to ensure that exceptions, connections are handled correctly and no issues arise in future. You can mention your requirements in the ticket and the team would provide recommendation as to whether or not any infra changes are required to process this amount of data. 

Thanks

Prasannta Verma

 

alc
Regular Contributor
Regular Contributor

Hello Prasannta,

Thank you very much for the link and explanation!

Yes, I started from the sample connector and using the mentioned abstractConnector-8.10.3.jar as start point.

But I do have two questions for your assistance:

1. I am struggling of the  colsToPropertyMapping JSON for account and entitlement associations because I have multiple entitlement types and each type need a different colstoPropertyMapping. Could you please share an example of mapper with such multiple entitlement types import?

2. Can I use all of following objects in createAccountJSON in order to use their attribute values for account creation?
"username": "${users.username}",
"accountName": "${accounts.name}",
"password":"${requestAccessAttributes.get('Password')}",
"taskid":"${arsTasks.getId()}"

Your kind help would speed up my coding, thanks a lot!

1. You can do mappings for each type of entitlement, You can refer below doc for samples

https://docs.saviyntcloud.com/bundle/REST-v232/page/Content/Developers-Handbook.htm

2. username - ${user.username}, accountname - ${accountName} , password is dependent on whether you are using randompassword or capturing on request form, taskid are you referring task key if so then i don't this it is exposed


Regards,
Saathvik
If this reply answered your question, please Accept As Solution and give Kudos to help others facing similar issue.

alc
Regular Contributor
Regular Contributor

Thanks a lot SK for your recommendation. So the mapping JSON configuration for REST connector also apply to custom connector based on Saviynt connector framework, it is great to know. I saw the link is  version 23. Any suggestions or watch out if we build for Saviynt 5.5 SP3? we only need account operations such as reconcile/create/update/delete/enable/disable and change password, no entitlement related operations. hope the documentation of v23 for these operations apply to Saviynt 5.5 SP3.

https://docs.saviyntcloud.com/bundle/REST-v55x/page/Content/Developers-Handbook.htm

rushikeshvartak_0-1675986794285.png

 


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.