Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2017
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function Fetch-ADUser {
  2.     Param (
  3.     [parameter(ValueFromPipeline=$true)]
  4.     [hashtable]$Properties,
  5.     [parameter(ParameterSetName='Identity',Position=0)]
  6.     [string]$Identity,
  7.     [parameter(ParameterSetName='Name',Position=0)]
  8.     [string]$GivenName,
  9.     [parameter(Position=1)]
  10.     [string]$Surname
  11.     )
  12.     $parameter = @{}
  13.     if ($allprops) {
  14.         $parameter = '@{Properties="*"}'
  15.     }else{
  16.         $propstr = @()
  17.         if ($Properties.Count) {
  18.             $propstr = "@("
  19.             $Properties.Keys | %{
  20.                 $propstr += "`"$_`","
  21.             }
  22.             $propstr = $propstr.TrimEnd(',')+")"
  23.             $parameter.Add('Properties',$propstr)
  24.         }
  25.     }
  26.  
  27.     switch ($PsCmdlet.ParameterSetName) {
  28.    
  29.         "Identity" {
  30.             $parameter | Get-ADUser -Identity $Identity
  31.         }
  32.         "Name" {
  33.             "*******"
  34.             #Works!
  35.             Get-ADUser -Filter {(GivenName -eq $givenname) -And (Surname -eq $surname)} -Properties @("mail","info")
  36.             #Fail!
  37.             $parameter | Get-ADUser -Filter {(GivenName -eq $givenname) -And (Surname -eq $surname)}
  38.             Get-ADUser -Filter {(GivenName -eq $givenname) -And (Surname -eq $surname)} $parameter
  39.             "******"
  40.         }
  41.     }
  42. }
  43.  
  44. $newprop = @{info="pers3232323pere";mail="petrfeaf@fdadf.com"}
  45. $user = $newprop | Fetch-ADUser -GivenName 'Pär' -Surname 'Halleröd'
  46.  
  47.  
  48. ######################
  49. OUTPUT
  50. ######################
  51. Get-ADUser : The input object cannot be bound to any parameters for the command either because the command does not take pipeline input or
  52. operties do not match any of the parameters that take pipeline input.
  53. At D:\Scripts\elevimport\MasterADManager.ps1:43 char:28
  54. +                 $parameter | Get-ADUser <<<<  -Filter {(GivenName -eq $givenname) -And (Surname -eq $surname)}
  55.     + CategoryInfo          : InvalidArgument: (System.Collections.Hashtable:Hashtable) [Get-ADUser], ParameterBindingException
  56.     + FullyQualifiedErrorId : InputObjectNotBound,Microsoft.ActiveDirectory.Management.Commands.GetADUser
  57.  
  58. Get-ADUser : A positional parameter cannot be found that accepts argument 'System.Collections.Hashtable'.
  59. At D:\Scripts\elevimport\MasterADManager.ps1:44 char:15
  60. +                 Get-ADUser <<<<  -Filter {(GivenName -eq $givenname) -And (Surname -eq $surname)} $parameter
  61.     + CategoryInfo          : InvalidArgument: (:) [Get-ADUser], ParameterBindingException
  62.     + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.ActiveDirectory.Management.Commands.GetADUser
  63.  
  64. *******
  65.  
  66.  
  67. DistinguishedName : CN=r Halleröd,OU=Praktikanter,OU=Tegner,OU=0_Users,OU=Skolor,DC=saffle,DC=edu
  68. Enabled           : True
  69. GivenName         : Pär
  70. info              : testnote
  71. mail              : Par.Hallerod@skola.saffle.se
  72. Name              : Pär Halleröd
  73. ObjectClass       : user
  74. ObjectGUID        : d004bb22-bb0c-4d6e-9a70-d6956c39757e
  75. SamAccountName    : 1101paol
  76. SID               : S-1-5-21-448539723-1604221776-839522115-17256
  77. Surname           : Halleröd
  78. UserPrincipalName : 1101paol@saffle.edu
  79.  
  80. DistinguishedName : CN=r Halleröd,OU=Praktikanter,OU=Tegner,OU=0_Users,OU=Skolor,DC=saffle,DC=edu
  81. Enabled           : True
  82. GivenName         : Pär
  83. Name              : Pär Halleröd
  84. ObjectClass       : user
  85. ObjectGUID        : d004bb22-bb0c-4d6e-9a70-d6956c39757e
  86. SamAccountName    : 1101paol
  87. SID               : S-1-5-21-448539723-1604221776-839522115-17256
  88. Surname           : Halleröd
  89. UserPrincipalName : 1101paol@saffle.edu
  90.  
  91. ******
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement