<div dir="ltr">Hi Brad,<div><br></div><div>you can try an odd trick to preserve the old value - i use the identity attribute as both source and target of the mapping. The source contains the 'old' value. Something like this</div><div><br></div><div> <attribute><br> <c:ref>ri:authTimestamp</c:ref><br> <inbound><br> <strength>normal</strength><br> <source><br> <c:path>$focus/extension/lastLDAPLogin</c:path><!-- old focus attribute value --></div><div> </source><br> <expression><br> <c:script><br> <c:code><br> ! basic.isEmpty(input) ? input : lastLDAPLogin<br> </c:code><br> </c:script><br> </expression><br> <target><br> <c:path>$focus/extension/lastLDAPLogin</c:path><br> </target><br> </inbound><br> </attribute><br></div><div><br></div><div>I remember i originaly started with the same condition approach but failed, don't know the details any more and lack the theory.</div><div><br></div><div>arnost</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">út 25. 6. 2019 v 17:59 odesílatel Brad Firestone <<a href="mailto:bhotrock@gmail.com">bhotrock@gmail.com</a>> napsal:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi All,<br>
<br>
I'm using the lastbind overlay with OpenLDAP to set the authTimestamp <br>
attribute when someone successfully bind to LDAP. I'm putting this <br>
value into a midPoint attribute: $user/extension/lastLDAPLogin<br>
<br>
This process works correctly. However, if an LDAP account is removed <br>
from the User and then added back, there isn't an authTimestamp <br>
attribute value until their NEXT successful bind. If the User is <br>
reconciled for any reason, then the midPoint value for lastLDAPLogin is <br>
removed.<br>
<br>
I would like to keep that midPoint value no matter what, never remove <br>
it, and update it when OpenLDAP sets a new value. I tried the following <br>
condition, but it's not working<br>
<br>
<attribute><br>
<ref>ri:authTimestamp</ref><br>
<inbound><br>
<strength>normal</strength><br>
<target><br>
<path>$user/extension/lastLDAPLogin</path><br>
</target><br>
<condition><br>
<script><br>
<code>!basic.isEmpty(input)</code><br>
</script><br>
</condition><br>
</inbound><br>
</attribute><br>
<br>
I found this condition listed at: <br>
<a href="https://wiki.evolveum.com/display/midPoint/Mapping" rel="noreferrer" target="_blank">https://wiki.evolveum.com/display/midPoint/Mapping</a><br>
(To me, it looks like there is a missing ! in the 2.2 and above example, <br>
but I've tried it both ways.)<br>
<br>
With this in place, if I reconcile a User who has a value for <br>
lastLDAPLogin already set, but doesn't have that attribute on the LDAP <br>
server, then the midPoint value is removed.<br>
<br>
Does anyone have any ideas of how I should construct my mapping to never <br>
remove the value from midPoint?<br>
Thanks!<br>
_______________________________________________<br>
midPoint mailing list<br>
<a href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a><br>
<a href="http://lists.evolveum.com/mailman/listinfo/midpoint" rel="noreferrer" target="_blank">http://lists.evolveum.com/mailman/listinfo/midpoint</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:13px"><p><strong>Arnošt Starosta</strong><br><span style="font-size:11px;color:rgb(128,128,128)">solution architect</span></p></div><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px">gsm: [+420] 603 794 932<br>e‑mail: <a href="mailto:arnost.starosta@ami.cz" target="_blank">arnost.starosta@ami.cz</a></p><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px"><strong>AMI Praha a.s.</strong><br>Pláničkova 11, 162 00 Praha 6</p><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px">tel.: [+420] 274 783 239 | web: <a href="https://www.ami.cz" target="_blank">www.ami.cz</a></p><p style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-size:10px;margin-top:20px"><img src="http://www.ami.cz/images/podpis/ami_logo.gif" alt="AMI Praha a.s." style="border: 0px;"></p><p style="font-family:Arial,sans-serif;font-size:11px;color:rgb(170,170,170)">Textem tohoto e‑mailu podepisující neslibuje uzavřít ani neuzavírá za společnost AMI Praha a.s.<br>jakoukoliv smlouvu. Každá smlouva, pokud bude uzavřena, musí mít výhradně písemnou formu.<br><span style="font-size:6px"> </span><br>Tento e‑mail je určen výhradně pro potřeby jeho adresáta/ů a může obsahovat důvěrné nebo osobní<br>informace. Nejste‑li zamýšleným příjemcem, je zakázáno jakékoliv zveřejňování, zprostředkování<br>nebo jiné použití těchto informací. Pokud jste obdrželi e‑mail neoprávněně, informujte o tom prosím<br>odesílatele a vymažte neprodleně všechny kopie tohoto e‑mailu včetně všech jeho příloh. Nakládáním<br>s neoprávněně získanými informacemi se vystavujete riziku právního postihu.</p></div></div></div></div>