<div dir="ltr">It looks like the auxiliaryObjectClass provides needed magic. Only the thing which looks inconvenient is that if we'd like to import a computer via Midpoint UI we need to go under structural resource objects ("user" in our case) - not under 

auxiliaryObjectClass one ("computer"). Under auxiliaryObjectClass import doesn't work.<div><br></div><div><div style="background-color:rgb(30,31,34);color:rgb(188,190,196)"><pre style="font-family:"JetBrains Mono",monospace;font-size:9.8pt"><pre style="font-family:"JetBrains Mono",monospace;font-size:9.8pt"><pre style="font-family:"JetBrains Mono",monospace;font-size:9.8pt"><span style="color:rgb(213,183,120)"><objectType</span><span style="color:rgb(213,183,120)">><br></span><span style="color:rgb(213,183,120)">    <kind></span>account<span style="color:rgb(213,183,120)"></kind><br></span><span style="color:rgb(213,183,120)">    <intent></span>computer<span style="color:rgb(213,183,120)"></intent><br></span><span style="color:rgb(213,183,120)">    <default></span>false<span style="color:rgb(213,183,120)"></default><br></span><span style="color:rgb(213,183,120)">    <delineation><br></span><span style="color:rgb(213,183,120)">        <objectClass></span>ri:user<span style="color:rgb(213,183,120)"></objectClass><br></span><span style="color:rgb(213,183,120)">        <auxiliaryObjectClass></span>ri:computer<span style="color:rgb(213,183,120)"></auxiliaryObjectClass></span><span style="color:rgb(213,183,120)"><br></span><span style="color:rgb(213,183,120)">    </delineation><br></span>..............</pre><pre style="font-family:"JetBrains Mono",monospace;font-size:9.8pt"><pre style="font-size:9.8pt;font-family:"JetBrains Mono",monospace"><span style="color:rgb(213,183,120)"></objectType</span><span style="color:rgb(213,183,120)">></span></pre>
<br>
</pre></pre></pre></div></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, 23 Apr 2024 at 15:25, Yakov Revyakin <<a href="mailto:yrevyakin@gmail.com">yrevyakin@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi All,<div>Debugging AdLdapConnector I've found the cause of the problem.</div><div>AdLdapConnector.java class in v.3.7 gets some more specific processing of UAC. It applies UAC logic (including enable/disable) only if the current AD object class is "user".  </div><div>The following line in udateDelta() makes it impossible to get UAC processing for "computer" class in the same way as for "user". So, the connector can't enable/disable "computer" in the same way as it can do with "user".</div><div><br></div><div>boolean isUserObjectClass = getSchemaTranslator().<b>isUserObjectClass</b>(ldapObjectClass.getName());<br></div><div>boolean hasUacPatch = !getConfiguration().isRawUserAccountControlAttribute() && <b>isUserObjectClass</b> && hasUacDelta(deltas);<br></div><div><b><br></b></div><div><b>isUserObjectClass</b><b>()</b> simply checks if objectClass is equal to the string "user".<b><br></b></div><div><br></div><div>I know that there is a possibility to work with UAC in raw mode but it is a bit uncomfortable.</div><div>What is the best way to solve the problem? Can the connector configuration be improved to support a list of user objects (user, computer) instead of a single value (user)?</div><div><br></div><div>Thanks,</div><div>Yakov</div><div><br></div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 1 Mar 2024 at 14:49, Yakov Revyakin <<a href="mailto:yrevyakin@gmail.com" target="_blank">yrevyakin@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I've migrated to MP v.4.8.2 with LDAP connector v3.7<br>I have AD user & computer objectTypes. I manage AD 'computer' status in the same way as 'user' using MP administrative status. <div>I can see that disabling 'user' works as expected. But disabling 'computer' throws the error:<br><br></div><div>com.evolveum.midpoint.util.exception.SchemaException: Error modifying LDAP entry CN=WS164,OU=Computers,OU=...........,DC=local: [<b>replace:userAccountControl=FALSE,</b>]: invalid<br>AttributeSyntax: 00000057: LdapErr: DSID-0C091284, comment: Error in attribute conversion operation, data 0, v4563? (21)<br></div><div><br></div><div>It looks like MP tries to update userAccountControl with boolean value when integer is expected.</div><div><br></div><div>Do you have any ideas on how to solve this?</div><div>Yakov</div></div>
</blockquote></div>
</blockquote></div>