none
In entfernte Domäne verbinden RRS feed

  • Frage

  • Hallo

    Ich muss aus dem AD die User heraus lesen. Es wäre sehr praktisch wenn ich den Powershell Skript auch von meinem Laptop aus starten könnte. Mein Laptop befindet sich aber in einer anderen Domäne als der Server auf dem sich das AD befindet.

    Zum verstehen:

    Laptop: Domäne = test.local

    Server: Domäne = custtest.ch (AD ist hier drauf)

     

    Wie kann ich nun die Befehle setzten, dass er mir auf diese Domäne connectet und dann mit die Daten wieder auf den Laptop ausgiebt.. Am besten wäre es auch noch wenn der mir noch ein Excel file generiert.

     

    Was ich bis jetzt versucht habe:

    Ich habe die Powershell schon als Administrator von der Domäne firmasrv.ch ausgeführt. Leider sagr er mir dann das er die AD cmdlets nicht kenne. Dann lade ich diese noch mal rein und dann sagt er mir:

    PS D:\> .\skript.ps1
    Get-ADUser : The supplied distinguishedName must belong to one of the following
    partition(s): 'DC=custtest,DC=local , CN=Configuration,DC=custtest,DC=local ,
    CN=Schema,CN=Configuration,DC=custtest,DC=local , DC=DomainDnsZones,DC=custtest
    ,DC=local , DC=ForestDnsZones,DC=custtest,DC=local'.
    At D:\skript.ps1:4 char:11
    + Get-ADUser <<<< -Filter { Name -Like "*" } -Searchbase "DC=in4uasp,DC=ch,U=H
    osting"
    + CategoryInfo : InvalidArgument: (:) [Get-ADUser], ArgumentExcep
    tion
    + FullyQualifiedErrorId : The supplied distinguishedName must belong to on
    e of the following partition(s): 'DC=custtest,DC=local , CN=Configuration,
    DC=custtest,DC=local , CN=Schema,CN=Configuration,DC=custtest,DC=local , D
    C=DomainDnsZones,DC=custtest,DC=local , DC=ForestDnsZones,DC=custtest,DC=l
    ocal'.,Microsoft.ActiveDirectory.Management.Commands.GetADUser

     

     

    Das ist ja meine Domäne wo ich mit dem Laptop drinnen bin. Es muss doch riegndwie gehen das ich auch die andere Domäne conecten kann :)

     

    Wenn jemand von euch eine Idee hat, wäre ich sehr dankbar.

     

    Lg Chakuza17


    Mittwoch, 17. August 2011 09:10

Antworten

  • Hallo,

    mit den Quest Free PowerShell Command for Active Directory http://www.quest.com/powershell/activeroles-server.aspx

    kann man sich mit unterschiedlichen Domains verbinden, z.B. so:

    Add-PSSnapin Quest.ActiveRoles.ADManagement

    $ADConnection = Connect-QADService -Service 'custtest.ch'

    Get-QADUser -Connection $ADConnection ....

     

    Gruss Olaf

     

    Mittwoch, 17. August 2011 15:28
  • und so gehts mit den AD-Cmdlets, die du schon installiert hast:

    New-PSDrive -Name <name of the drive> -PSProvider ActiveDirectory -Root "<DN of the partition/NC>" –Server <server or domain name (NetBIOS/FQDN)[:port number]> -Credential <domain name>\<username>
    

    siehe auch hier.

     

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com

    Hilf mit und markiere hilfreiche Beiträge als "Hilfreich" und Beiträge die deine Frage ganz oder teilweise beantwortet haben als "Antwort".

    Samstag, 20. August 2011 13:03
    Moderator

Alle Antworten

  • Hallo,

    mit den Quest Free PowerShell Command for Active Directory http://www.quest.com/powershell/activeroles-server.aspx

    kann man sich mit unterschiedlichen Domains verbinden, z.B. so:

    Add-PSSnapin Quest.ActiveRoles.ADManagement

    $ADConnection = Connect-QADService -Service 'custtest.ch'

    Get-QADUser -Connection $ADConnection ....

     

    Gruss Olaf

     

    Mittwoch, 17. August 2011 15:28
  • und so gehts mit den AD-Cmdlets, die du schon installiert hast:

    New-PSDrive -Name <name of the drive> -PSProvider ActiveDirectory -Root "<DN of the partition/NC>" –Server <server or domain name (NetBIOS/FQDN)[:port number]> -Credential <domain name>\<username>
    

    siehe auch hier.

     

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com

    Hilf mit und markiere hilfreiche Beiträge als "Hilfreich" und Beiträge die deine Frage ganz oder teilweise beantwortet haben als "Antwort".

    Samstag, 20. August 2011 13:03
    Moderator
  • Danke für die Antworten.

     

    Ich habe es nun mit  dem AD Cmdlets versucht.

    Mein Skript sieht nun so aus:

    # Connect auf eine Domäne
    New-PSDrive -Name CUSTTEST -PSProvider ActiveDirectory -Root CUSTTEST –Server 10.20.30.20 -Credential CUSTTEST\nstestadm
    
    
    # List die Domäne aus und erzeugt ein .CSV file.
    
    Get-ADUser -Filter { Name -Like "*" } -Searchbase "OU=CUSTTEST,DC=custtest,DC=local" | select ou,Enabled,givenname,surname,samaccountname,description,company | export-csv D:\powershell\Skript_v7test.csv
    

     

    Ich erhalte aber diese Meldungen in der Powershell console.

    New-PSDrive : Die Syntax des Objektnamens ist ungültig
    Bei M:\Sektor 940\Test_Scripting\Powershell\Skript_v7.ps1:2 Zeichen:12
    + New-PSDrive <<<< -Name CUSTTEST -PSProvider ActiveDirectory -Root CUSTTEST -
    Server 10.20.30.20 -Credential CUSTTEST\nstestadm
      + CategoryInfo     : NotSpecified: (CUSTTEST:PSDriveInfo) [New-PSDriv
      e], ADException
      + FullyQualifiedErrorId : ADProvider:NewDrive:InvalidRoot:ADError,Microsof
      t.PowerShell.Commands.NewPSDriveCommand
    
    Get-ADUser : Der bereitgestellte definierte Name muss einer der folgenden Parti
    tionen zugeordnet sein: "DC=intern,DC=local , CN=Configuration,DC=intern,DC=local ,
     CN=Schema,CN=Configuration,DC=intern,DC=local , DC=DomainDnsZones,DC=intern,DC=loc
    al , DC=ForestDnsZones,DC=intern,DC=local".
    Bei M:\Sektor 940\Test_Scripting\Powershell\Skript_v7.ps1:8 Zeichen:11
    + Get-ADUser <<<< -Filter { Name -Like "*" } -Searchbase "OU=CUSTTEST,DC=custt
    est,DC=local" | select ou,Enabled,givenname,surname,samaccountname,description,
    company | export-csv D:\powershell\Skript_v7test.csv
      + CategoryInfo     : InvalidArgument: (:) [Get-ADUser], ArgumentExcep
      tion
      + FullyQualifiedErrorId : Der bereitgestellte definierte Name muss einer d
      er folgenden Partitionen zugeordnet sein: "DC=intern,DC=local , CN=Configura
     tion,DC=intern,DC=local , CN=Schema,CN=Configuration,DC=intern,DC=local , DC=D
     omainDnsZones,DC=intern,DC=local , DC=ForestDnsZones,DC=intern,DC=local".,Micr
    osoft.ActiveDirectory.Management.Commands.GetADUser


    Komisch finde ich das ich ein eingabe Fenster bekomme wo ich mein passwort eingeben kann, dann werden die AD cmdlets geladen und erst dann kommt diese Meldung. Kennt ihr das? was muss ich im Skript verändern das es klappt? :)

     

    Lg

     

    Donnerstag, 25. August 2011 07:41
  • Es muss New-PSDrive ... -Root 'DC=custtest,DC=local' heissen.

    Da Du -Credential CUSTTEST\nstestadm mit angegeben hast, wird auch dass Passwort abgefragt. Wenn die Rechte schon vorhanden sind dann einfach weglassen.

    Wie man das neue PSDrive elegant z.B. an Get-ADUser binden kann ist IMHO umständlich gelöst:

    Get-ADUser -Server (Get-PSDrive CUTTEST).Server -Credential (Get-PSDrive CUSTTEST).Credential ...

    Bei den Quest Tools ist dies über den Connection Parameter eleganter gelöst. Diese sind allerdings bei weitem nicht so performant wie das ActiveDirectory Modul! 

    Gruss Olaf


    Donnerstag, 25. August 2011 09:41
  • Hallo

    Da ich total der Anfänger will das bei mir nicht klappen.

     

    Nun erhalte sieht mein Skript so aus:

    --------------------------------------------------------------------------------------------------------------

    # Connect auf eine Domäne
    New-PSDrive -Name Test -PSProvider ActiveDirectory -Root 'DC=custtest,DC=local' -Credential CUSTTEST\nstestadm


    # List die Domäne aus und erzeugt ein .CSV file.
    Get-ADUser -Filter { Name -Like "*" } -Searchbase "OU=CUSTTEST,DC=custtest,DC=local" | select ou,Enabled,givenname,surname,samaccountname,description,company | export-csv C:\powershell\Skript_v7test.csv

    --------------------------------------------------------------------------------------------------------------

    Fehlermeldung:

    --------------------------------------------------------------------------------------------------------------

    New-PSDrive : A referral was returned from the server
    At C:\Powershell\Skript_v8.ps1:2 char:12
    + New-PSDrive <<<<  -Name Test -PSProvider ActiveDirectory -Root 'DC=custtest,D
    C=local' -Credential CUSTTEST\nstestadm
        + CategoryInfo          : ResourceUnavailable: (Test:PSDriveInfo) [New-PSD
       rive], ADReferralException
        + FullyQualifiedErrorId : ADProvider:NewDrive:InvalidRoot:ADError,Microsof
       t.PowerShell.Commands.NewPSDriveCommand

    --------------------------------------------------------------------------------------------------------------

     

    Zwischen den beiden Domänen besteht ein Trust.

     

    Mfg



    Donnerstag, 1. September 2011 08:58