2017-02-27 16 views
0

のような広告グループ名に追加されていない場合はかなり新しく、来月の時点でPowerShellトレーニングコースに参加しますが、役に立った!広告グループにユーザーを追加し、

スクリプトは1時間ごとに実行する必要があり、ADのすべてのユーザーを調べる必要があり、次のことを行う必要があります。そう、彼らはまだ 何もしない場合は、「HP」のような名前のADグループの一部ではない2.

  • チェックに進み場合

    1. チェックアカウントは、有効になっている場合。 「HP」のような名前の広告グループに属していない場合は、手順3に進みます。

    2. ユーザーの都市のリストを取得します。

    3. ユーザーの市内マッチ「香港」が「HPアジア」

    4. ユーザーの市内一致する場合は 'と呼ばれるADグループに追加する場合、ユーザーの市内マッチ「ロンドン」が「HP EU」

    5. と呼ばれるADグループに追加する場合

      ニューヨーク

  • 「HPアメリカ」と呼ばれるADグループに追加END

    何私が持っていることは、このですが、それは

    が動作していません

    私が必要な詳細情報を取得する方法であなたのコードスニペットを提供しているスイッチstament

    Get-ADGroup -filter {name -like"HP*"} 
    $Users = get-aduser -Identity testuser -properties City,MemberOf | where{$_.city -ne $Null} 
    Foreach($user in $Users){ 
        IF(-not($user.memberof -notlike "HP*") 
          $group = Switch ($User.city){ 
          "London" {"HP EU"} 
          "Hong Kong" {"HP Asia"} 
          "New York" {"HP US"} 
            } 
         $groupDN = (get-adgroup $group).DistinguishedName 
         Add-ADGroupMember -Identity $groupDN -Members $user 
        } 
    

    答えて

    0

    を好きではないようです。しかし、Powershellを学ばなくてはならないので、完全なスクリプトを書いてはいけません。私はあなたを抱きしめたくありません。以下のロジックをベースラインとしてスクリプトを構築してください。 :)

    Active Directoryに関する詳細なコマンドレットを知りたい場合は、 "Get-Command -noun AD *"を使用してください。

    Check if user account is enabled/disabled: 
    ------------------------------------------ 
    $UserName = “UserName” 
    $searcher = new-object DirectoryServices.DirectorySearcher([ADSI]””) 
    $searcher.filter = “(&(objectClass=user)(sAMAccountName= $UserName))” 
    $founduser = $searcher.findOne() 
    $founduser.Properties.useraccountcontrol 
    $value = $founduser.Properties.useraccountcontrol 
    if ($Value -eq 514) 
    { 
    Write-Output “Account is disabled” 
    } 
    
    if ($Value -eq 512) 
    { 
    Write-Output “Account is Enabled” 
    } 
    
    
    
    Check if user belongs to group: 
    ------------------------------ 
    $user = "TestUser" 
    $group = "Domain Admins" 
    $members = Get-ADGroupMember -Identity $group -Recursive | Select -ExpandProperty Name 
    
    If ($members -contains $user) { 
         Write-Host "$user exists in the group" 
    } Else { 
         Write-Host "$user not exists in the group" 
    } 
    
    +0

    私が行ったことで私の質問を更新してくれてありがとう、あなたに助けてくれてありがとう、それでもそれdoes notはそれを好むようです。何か案は? –

    関連する問題