and more in a single search tool across platforms. Read the announcement here. |
02/17/2023 03:55 PM
Hi Experts,
Please help
Env: 2021
User Source: Oracle DB
We are getting user end date in future date, like users on notice which ends in future, or contractors with fixed end date (this is create on user import or when user is created through UI).
How do I auto terminate user on that future date?
One option I know is through user update rules but there is no update on user data on that "future" date to trigger the update rule.
Regards,
Naveen
Solved! Go to Solution.
02/17/2023 04:08 PM
I way you can achieve this is in user import try to populate user custom property as terminate if user end date is current date otherwise null
And then build a user update rule on that respective custom property
like cp xx updated and cp values == terminate then disable user
02/18/2023 02:11 AM
Thanks for your reply @sk
But I am not sure how will that work.
If the user informs HR on Feb 28, 2023 that March 31, 2023 will be his last day, HR updates data on Feb 28, makes End date against user record to March 31 (future date).
Now this incremental update comes to Saviynt on Feb 28, and End date is set to March 31 in Saviynt against user record as well.
After this there is no change in user record for me to pick incremental and populate customproperty the whole month. Therefore it won't trigger User Update rule on March 31.
Isn't there a way in Saviynt, like OIM does, to run a job everyday and check for all users if their EndDate is today, and disable them?
Regards
Naveen
02/19/2023 10:29 PM
Use actionable analytics
02/20/2023 03:15 PM
What will be the Default Action for "Disable User" as it is not in allowed actions list.
Please guide, very new to Analytics
02/20/2023 06:23 PM
Can you elaborate https://saviynt.freshdesk.com/support/solutions/articles/43000606546-configuring-allowed-actions
02/21/2023 09:29 AM
You need to use inline preprocessor to populate CPxx as terminated when end date is equal to or less the current date otherwise just null
02/19/2023 03:53 AM
User import xml in saviynt4saviynt connection can be used here.
In xml write your query and map it to any custom attribute. Schedule a job to run saviynt4saviynt and it will update custom attribute.
Based on custom attribute updation, user update can be called.
02/20/2023 08:44 PM
Use Sav4sav User import xml to update the status key when the enddate is current date and then based on the statuskey update you can trigger user update rules.
Sample xml:
<dataMapping>
<before-import>
</before-import>
<sql-query description="This is the Source DB Query" uniquecolumnsascommaseparated="username">
<![CDATA[
select a.username as 'username', 0 as 'ActiveStatus' from users a where a.username is not null AND a.enddate < sysdate() AND a.statusKey='1' AND a.startdate < sysdate() AND a.enddate > a.STARTDATE;
]]>
</sql-query>
<importsettings>
<zeroDayProvisioning>false</zeroDayProvisioning>
<userNotInFileAction>NOACTION</userNotInFileAction>
<checkRules>true</checkRules>
<buildUserMap>false</buildUserMap>
<userReconcillationField>username</userReconcillationField>
</importsettings>
<mapper description="This is the mapping field for SAviynt Field name" defaultrole="ROLE_END_USER" >
<mapfield saviyntproperty="username" sourceproperty="username" type="character"></mapfield>
<mapfield saviyntproperty="statuskey" sourceproperty="ActiveStatus" type="character"></mapfield>
</mapper>
<after-import description="SQL">
</after-import>
</dataMapping>