locked
JoinDomainOrWorkgroup: error 1003 (Cannot complete this function) RRS feed

  • Question

  • Bonjour,

    J'ai créé un programme me permettant de migrer "semi-automatiquement" un poste d'un domaine A vers un domaine B, avec les profiles utilisateurs.

    Pour le tester, j'ai créé 3 machines virtuelles, 1 XP SP3 sans aucunes MaJ, 1 Windows 7 et un 2008R2 pour l'activeDirectory.

    Celui-ci fonctionne parfaitement sous windows 7 (32 et 64bits), mais sous Windows XP SP3, lorsque j’intègre mon poste au domaine avec la méthode "joindomainorworkgroup" (en utilisant un compte utilisateur classique ayant l'autorisation d’intégrer un poste au domaine), j'ai une erreur 1003 (Cannot complete this function). La même migration avec le compte administrateur de l'AD fonctionne.

    J'ai testé l’intégration "en réel" sur notre vrai srv AD, mais même résultat.

    L'activeDirectory est un 2008R2 avec niveau de fonctionnalités 2003.

    Après avoir testé plusieurs choses, j'en conclus que lorsque je lui met le paramètre "AccountOU" à null, cela fonctionne, mais lorsque j'indique je chemin où intégrer le poste (ex:"OU=testOU, DC=domain, DC=Domain, DC=com"), j'ai cette erreur, qui, je le répète, n’apparaît pas sous Windows 7.

    Le problème est le même avec un VBS ou en ligne de commande avec wmic.

    Le but est de l'utiliser à plus grande échelle, sachant que je n'ai pas les identifiants du compte administrateur de l'AD, mais que mon compte à l'autorisation d'ajouter (mais pas modifier) des ordinateurs.

    Auriez-vous une réponse? Le problème vient-il de XP ou du srv? Un MAJ bien déterminée à installer? Merci

    vendredi 24 janvier 2014 16:26

Réponses

  • Bonjour,

    effectivement, normalement par défaut, les utilisateurs peuvent ajouter leur station au domaine. Cette possibilité est modifiable par stratégie!

    Ce droit est limité à 10 stations par utilisateur, et ne permet pas de réutiliser ou modifier un nom/objet existant. A part le conteneur "Computers", les autres OU ne sont pas forcément autorisées...

    A+


    Thierry DEMAN. Exchange MVP. MCSE:Messaging 2013,MCSE:Server Infrastructure 2012(78 MCPs). https://mvp.support.microsoft.com/profile=CE2B565B-B13D-4C24-B04D-F0D5766D14A1 http://base.faqexchange.info

    • Proposé comme réponse yohang lundi 27 janvier 2014 12:08
    • Marqué comme réponse YOHAN_G mercredi 29 janvier 2014 08:18
    dimanche 26 janvier 2014 23:14

Toutes les réponses

  • Bonsoir,

    Les compte des ordinateurs sont-ils créés au préalable dans l'AD cible? Des permissions supplémentaire sont-elles ajoutées, soit directement su l'objet, soit par héritage?

    Pouvez-vous poster ici-même le contenu du fichier log netsetup.log de la machine Windows XP. Vous devriez le trouver sous C:\Windows\Debug. Merci d'avance!


    Marc Lognoul [Infrastructure Expert]

    My Site/Mon Site |  MyBlog [EN]  | Mon Blog [FR]  |  Twitter  |  LinkedIn

    vendredi 24 janvier 2014 17:49
  • Bonjour,

    J'ai créé l'AD dans un 2008 R2, avec les options par défaut à la création du rôle. Les comptes ne sont pas créés au préalable. J'y ai créé un compte utilisateur, que j'utilise pour faire mes tests.

    Dans mon entreprise, nous utilisons un script vbs qui permet l’intégration d'un poste au domaine. J'ai testé d’intégrer ma VM XP dans notre vrai AD avec leurs script, ça fonctionne, mais avec un script vbs tout simple qui fait un joindomainorworkgroup, j'ai la même erreur. J'ai regardé leurs script, je ne vois rien de vraiment différent, sauf qu'ils font des requêtes sur le serveur, avant, avec un autre compte... Celui-ci ouvrirait-il une connexion qui permettrait ensuite la jonction au domaine directement dans une OU avec un compte utilisateur classique? Je suis un peu perdu là...

    Où donner les autorisations pour intégrer directement dans une OU?

    Je ne met pas mon fichier log au complet (et je met des étoiles aux endroits sensibles):

    01/26 19:45:33 NetpDoDomainJoin
    01/26 19:45:33 NetpMachineValidToJoin: 'D-NONE'
    01/26 19:45:33 NetpGetLsaPrimaryDomain: status: 0x0
    01/26 19:45:33 NetpMachineValidToJoin: status: 0x0
    01/26 19:45:33 NetpJoinDomain
    01/26 19:45:33 Machine: D-NONE
    01/26 19:45:33 Domain: dom1.*****.fr
    01/26 19:45:33 MachineAccountOU: OU=Desktops, OU="FR24** - OP******", OU=FR, OU=VE, DC=dom1, DC=******, DC=fr
    01/26 19:45:33 Account: y*****.g*****@dom1.*****.fr
    01/26 19:45:33 Options: 0x3
    01/26 19:45:33 OS Version: 5.1
    01/26 19:45:33 Build number: 2600
    01/26 19:45:33 ServicePack: Service Pack 3
    01/26 19:45:33 NetpValidateName: checking to see if 'dom1.*****.fr' is valid as type 3 name
    01/26 19:45:33 NetpCheckDomainNameIsValid [ Exists ] for 'dom1.*****.fr' returned 0x0
    01/26 19:45:33 NetpValidateName: name 'dom1.*****.fr' is valid for type 3
    01/26 19:45:33 NetpDsGetDcName: trying to find DC in domain 'dom1.*****.fr', flags: 0x1020
    01/26 19:45:36 NetpDsGetDcName: failed to find a DC having account 'D-NONE$': 0x525
    01/26 19:45:36 NetpDsGetDcName: found DC '\\WIN-B0U4ABTDTO4.dom1.*****.fr' in the specified domain
    01/26 19:45:36 NetpJoinDomain: status of connecting to dc '\\WIN-B0U4ABTDTO4.dom1.*****.fr': 0x0
    01/26 19:45:36 NetpGetLsaPrimaryDomain: status: 0x0
    01/26 19:45:36 NetpGetDnsHostName: Read NV Hostname: D-None
    01/26 19:45:36 NetpGetDnsHostName: PrimaryDnsSuffix defaulted to DNS domain name: dom1.*****.fr
    01/26 19:45:36 NetpLsaOpenSecret: status: 0xc0000034
    01/26 19:45:36 NetpGetComputerObjectDn: Cracking DNS domain name dom1.*****.fr/ into Netbios on \\WIN-B0U4ABTDTO4.dom1.*****.fr
    01/26 19:45:36 NetpGetComputerObjectDn: Crack results: name = DOM1\
    01/26 19:45:36 NetpGetComputerObjectDn: Cracking account name DOM1\D-NONE$ on \\WIN-B0U4ABTDTO4.dom1.*****.fr
    01/26 19:45:36 NetpGetComputerObjectDn: Crack results: Account does not exist
    01/26 19:45:36 NetpGetComputerObjectDn: Got DN CN=D-NONE,OU=Desktops, OU="FR24***2 - O******", OU=FR, OU=VE, DC=dom1, DC=*****, DC=fr from the passed OU
    01/26 19:45:36 NetpModifyComputerObjectInDs: Initial attribute values:
    01/26 19:45:36 objectClass  =  Computer
    01/26 19:45:36 SamAccountName  =  D-NONE$
    01/26 19:45:36 userAccountControl  =  4096
    01/26 19:45:36 DnsHostName  =  D-None.dom1.******.fr
    01/26 19:45:36 ServicePrincipalName  =  HOST/D-None.dom1.*****.fr  HOST/D-NONE
    01/26 19:45:36 NetpModifyComputerObjectInDs: Computer Object does not exist in OU
    01/26 19:45:36 NetpModifyComputerObjectInDs: Attribute values to set:
    01/26 19:45:36 objectClass  =  Computer
    01/26 19:45:36 SamAccountName  =  D-NONE$
    01/26 19:45:36 userAccountControl  =  4096
    01/26 19:45:36 DnsHostName  =  D-None.dom1.*****.fr
    01/26 19:45:36 ServicePrincipalName  =  HOST/D-None.dom1.*****.fr  HOST/D-NONE
    01/26 19:45:36 NetpModifyComputerObjectInDs: ldap_modify_s (1) returned LDAP_UNWILLING_TO_PERFORM. Trying to recover.
    01/26 19:45:36 NetpModifyComputerObjectInDs: ldap_modify_s retuned LDAP_UNWILLING_TO_PERFORM but password was not being set
    01/26 19:45:36 NetpCreateComputerObjectInDs: NetpModifyComputerObjectInDs failed: 0x3eb
    01/26 19:45:36 ldap_unbind status: 0x0
    01/26 19:45:36 NetpJoinDomain: status of creating account in OU: 0x3eb
    01/26 19:45:36 NetpJoinDomain: initiaing a rollback due to earlier errors
    01/26 19:45:36 NetpLsaOpenSecret: status: 0x0
    01/26 19:45:36 NetpJoinDomain: rollback: status of deleting secret: 0x0
    01/26 19:45:36 NetpJoinDomain: status of disconnecting from '\\WIN-B0U4ABTDTO4.dom1.*****.fr': 0x0
    01/26 19:45:36 NetpDoDomainJoin: status: 0x3eb

    dimanche 26 janvier 2014 19:30
  • Bonjour,

    J'ai créé l'AD dans un 2008 R2, avec les options par défaut à la création du rôle. Les comptes ne sont pas créés au préalable. J'y ai créé un compte utilisateur, que j'utilise pour faire mes tests.

    Dans mon entreprise, nous utilisons un script vbs qui permet l’intégration d'un poste au domaine. J'ai testé d’intégrer ma VM XP dans notre vrai AD avec leurs script, ça fonctionne, mais avec un script vbs tout simple qui fait un joindomainorworkgroup, j'ai la même erreur. J'ai regardé leurs script, je ne vois rien de vraiment différent, sauf qu'ils font des requêtes sur le serveur, avant, avec un autre compte... Celui-ci ouvrirait-il une connexion qui permettrait ensuite la jonction au domaine directement dans une OU avec un compte utilisateur classique? Je suis un peu perdu là...

    Où donner les autorisations pour intégrer directement dans une OU?

    Je ne met pas mon fichier log au complet (et je met des étoiles aux endroits sensibles):

    01/26 19:45:33 NetpDoDomainJoin
    01/26 19:45:33 NetpMachineValidToJoin: 'D-NONE'
    01/26 19:45:33 NetpGetLsaPrimaryDomain: status: 0x0
    01/26 19:45:33 NetpMachineValidToJoin: status: 0x0
    01/26 19:45:33 NetpJoinDomain
    01/26 19:45:33 Machine: D-NONE
    01/26 19:45:33 Domain: dom1.*****.fr
    01/26 19:45:33 MachineAccountOU: OU=Desktops, OU="FR24** - OP******", OU=FR, OU=VE, DC=dom1, DC=******, DC=fr
    01/26 19:45:33 Account: y*****.g*****@dom1.*****.fr
    01/26 19:45:33 Options: 0x3
    01/26 19:45:33 OS Version: 5.1
    01/26 19:45:33 Build number: 2600
    01/26 19:45:33 ServicePack: Service Pack 3
    01/26 19:45:33 NetpValidateName: checking to see if 'dom1.*****.fr' is valid as type 3 name
    01/26 19:45:33 NetpCheckDomainNameIsValid [ Exists ] for 'dom1.*****.fr' returned 0x0
    01/26 19:45:33 NetpValidateName: name 'dom1.*****.fr' is valid for type 3
    01/26 19:45:33 NetpDsGetDcName: trying to find DC in domain 'dom1.*****.fr', flags: 0x1020
    01/26 19:45:36 NetpDsGetDcName: failed to find a DC having account 'D-NONE$': 0x525
    01/26 19:45:36 NetpDsGetDcName: found DC '\\WIN-B0U4ABTDTO4.dom1.*****.fr' in the specified domain
    01/26 19:45:36 NetpJoinDomain: status of connecting to dc '\\WIN-B0U4ABTDTO4.dom1.*****.fr': 0x0
    01/26 19:45:36 NetpGetLsaPrimaryDomain: status: 0x0
    01/26 19:45:36 NetpGetDnsHostName: Read NV Hostname: D-None
    01/26 19:45:36 NetpGetDnsHostName: PrimaryDnsSuffix defaulted to DNS domain name: dom1.*****.fr
    01/26 19:45:36 NetpLsaOpenSecret: status: 0xc0000034
    01/26 19:45:36 NetpGetComputerObjectDn: Cracking DNS domain name dom1.*****.fr/ into Netbios on \\WIN-B0U4ABTDTO4.dom1.*****.fr
    01/26 19:45:36 NetpGetComputerObjectDn: Crack results: name = DOM1\
    01/26 19:45:36 NetpGetComputerObjectDn: Cracking account name DOM1\D-NONE$ on \\WIN-B0U4ABTDTO4.dom1.*****.fr
    01/26 19:45:36 NetpGetComputerObjectDn: Crack results: Account does not exist
    01/26 19:45:36 NetpGetComputerObjectDn: Got DN CN=D-NONE,OU=Desktops, OU="FR24***2 - O******", OU=FR, OU=VE, DC=dom1, DC=*****, DC=fr from the passed OU
    01/26 19:45:36 NetpModifyComputerObjectInDs: Initial attribute values:
    01/26 19:45:36 objectClass  =  Computer
    01/26 19:45:36 SamAccountName  =  D-NONE$
    01/26 19:45:36 userAccountControl  =  4096
    01/26 19:45:36 DnsHostName  =  D-None.dom1.******.fr
    01/26 19:45:36 ServicePrincipalName  =  HOST/D-None.dom1.*****.fr  HOST/D-NONE
    01/26 19:45:36 NetpModifyComputerObjectInDs: Computer Object does not exist in OU
    01/26 19:45:36 NetpModifyComputerObjectInDs: Attribute values to set:
    01/26 19:45:36 objectClass  =  Computer
    01/26 19:45:36 SamAccountName  =  D-NONE$
    01/26 19:45:36 userAccountControl  =  4096
    01/26 19:45:36 DnsHostName  =  D-None.dom1.*****.fr
    01/26 19:45:36 ServicePrincipalName  =  HOST/D-None.dom1.*****.fr  HOST/D-NONE
    01/26 19:45:36 NetpModifyComputerObjectInDs: ldap_modify_s (1) returned LDAP_UNWILLING_TO_PERFORM. Trying to recover.
    01/26 19:45:36 NetpModifyComputerObjectInDs: ldap_modify_s retuned LDAP_UNWILLING_TO_PERFORM but password was not being set
    01/26 19:45:36 NetpCreateComputerObjectInDs: NetpModifyComputerObjectInDs failed: 0x3eb
    01/26 19:45:36 ldap_unbind status: 0x0
    01/26 19:45:36 NetpJoinDomain: status of creating account in OU: 0x3eb
    01/26 19:45:36 NetpJoinDomain: initiaing a rollback due to earlier errors
    01/26 19:45:36 NetpLsaOpenSecret: status: 0x0
    01/26 19:45:36 NetpJoinDomain: rollback: status of deleting secret: 0x0
    01/26 19:45:36 NetpJoinDomain: status of disconnecting from '\\WIN-B0U4ABTDTO4.dom1.*****.fr': 0x0
    01/26 19:45:36 NetpDoDomainJoin: status: 0x3eb

    Ok, je crois avoir trouvé, c'était vraiment c.. Au fait je me rends compte que dans le VBS de mon entreprise, ils n'utilisent pas le nom d'utilisateur qu'on lui indique (ex. mon login perso), mais ils vérifient si celui-ci est dans un certain groupe, et si c'est le cas, ils utilisent un compte spécifique pour l’intégration des postes, qui lui doit avoir le droit de le faire... En gros, contrairement à ce que j'ai cru, les comptes "classiques" dans le domaine n'ont pas le droit d'ajouter des ordinateurs... Je vais faire le test...

    Mais comment dans l'AD on donne le droit pour ajouter un ordinateur?

    dimanche 26 janvier 2014 22:24
  • Bonjour,

    effectivement, normalement par défaut, les utilisateurs peuvent ajouter leur station au domaine. Cette possibilité est modifiable par stratégie!

    Ce droit est limité à 10 stations par utilisateur, et ne permet pas de réutiliser ou modifier un nom/objet existant. A part le conteneur "Computers", les autres OU ne sont pas forcément autorisées...

    A+


    Thierry DEMAN. Exchange MVP. MCSE:Messaging 2013,MCSE:Server Infrastructure 2012(78 MCPs). https://mvp.support.microsoft.com/profile=CE2B565B-B13D-4C24-B04D-F0D5766D14A1 http://base.faqexchange.info

    • Proposé comme réponse yohang lundi 27 janvier 2014 12:08
    • Marqué comme réponse YOHAN_G mercredi 29 janvier 2014 08:18
    dimanche 26 janvier 2014 23:14