繁体   English   中英

Powershell GUI /表单-不创建Active Directory帐户

[英]Powershell GUI / Forms - Not creating Active Directory account

我不太擅长为标题添加标题,因此,如果标题有点随机,我深表歉意。

我正在构建Powershell GUI脚本以简化Active Directory用户的创建,但是在提交时不会创建该帐户。

我尝试重新定义变量并重写实际的用户创建脚本。

我没有包括所有位置,因为它会使代码更长,但是下面是所有相关代码。

希望您能帮助您!

Function Display-UserCreation {
    $PasswordValue = "Annodata" + [system.web.security.membership]::GeneratePassword(9, 2)
    $Password = ConvertTo-SecureString $PasswordValue -AsPlainText -Force

    $DisplayName = $UCFirstNameParam + " " + $UCsurNameParam
    $Mail = $UCFirstNameParam + "." + $UCsurNameParam + "@" + "annodata.co.uk"
    $MailAlias = $UCFirstNameParam + "." + $UCsurNameParam + "@" + $DNSRoot2

    $SInitial = $UCsurNameParam[0]
    $Initial = $UCFirstNameParam[0]
    $SAMAccountName = $UCFirstNameParam + "." + $UCsurNameParam
    $SAMAccountLower = $SAMAccountName.ToLower()
    $UserPrincipalName = $UCFirstNameParam + "." + $UCsurNameParam

    $defaultname = $SAMAccountName
    $email = $UCFirstNameParam + "." + $UCsurNameParam
    $i = 1

    While ((Get-ADUser -Filter "SamAccountName -eq '$SAMAccountName'" -ErrorAction SilentlyContinue) -ne $null) {
        $SamAccountName = $defaultname + [string]$i 
        $Mail = $email + [string]$i + "@" + "annodata.co.uk"
        $i++
    }

    if ( $UCLocationParam -EQ 'Bracknell' ) {
        $NewUserParams = @{
            path                  = "OU=Bracknell,OU=Sites,DC=annodata,DC=co,DC=uk"
            SamAccountName        = $SAMAccountName
            Name                  = $SAMAccountName
            DisplayName           = $DisplayName
            GivenName             = $UCFirstNameParam
            Surname               = $UCsurNameParam
            EmailAddress          = $Mail
            UserPrincipalName     = "$SAMAccountName@annodata.co.uk"
            Description           = $UCRoleParam
            ChangePasswordAtLogon = $true
            PasswordNeverExpires  = $false
            AccountPassword       = $password
            Enabled               = $true
        }
        New-ADUser @NewUserParams -ErrorAction SilentlyContinue

        Set-ADAccountPassword -Identity $SAMAccountName -Reset -NewPassword (ConvertTo-SecureString -AsPlainText $Password -Force)
    }
}

Function UCSubmit {
    if ([System.Windows.Forms.MessageBox]::Show("Please Confirm That The Details Are Correct. If they are, click ok", "Confirmation", [System.Windows.Forms.MessageBoxButtons]::OkCancel) -eq "Ok") {

        $UCFirstNameParamLong = New-Object System.Windows.Forms.Label
        $UCFirstNameParamLong.Text = $UCFirstName.Text
        $UCFirstNameParamLong.Location = New-Object System.Drawing.Point(180, 100)
        $UCFirstNameParamLong.AutoSize = $true
        $UCFirstNameParamLong.Font = 'Georgia,10'

        $UCSurnameParamLong = New-Object System.Windows.Forms.Label
        $UCSurnameParamLong.Text = $UCSurname.Text
        $UCSurnameParamLong.Location = New-Object System.Drawing.Point(180, 150)
        $UCSurnameParamLong.AutoSize = $true
        $UCSurnameParamLong.Font = 'Georgia,10'

        $UCRoleParamLong = New-Object System.Windows.Forms.Label
        $UCRoleParamLong.Text = $UCRole.Text
        $UCRoleParamLong.Location = New-Object System.Drawing.Point(180, 200)
        $UCRoleParamLong.AutoSize = $true
        $UCRoleParamLong.Font = 'Georgia,10'

        $UCLocationParamLong = New-Object System.Windows.Forms.Label
        $UCLocationParamLong.Text = $UCSiteSelection.Text
        $UCLocationParamLong.Location = New-Object System.Drawing.Point(180, 250)
        $UCLocationParamLong.AutoSize = $true
        $UCLocationParamLong.Font = 'Georgia,10'

        $UCFirstNameParam = $UCFirstNameParamLong.Text
        $UCSurnameParam = $UCSurnameParamLong.Text
        $UCRoleParam = $UCRoleParamLong.Text
        $UCLocationParam = $UCLocationParamLong.Text

        Display-UserCreation
    }
}

仅供将来参考。

似乎一开始并没有导航到创建功能。

解决该问题后,它就不再运行IF。 我必须更改IF的参数。

此后,由于某种原因未生成密码,密码复杂性还不够。

我现在已经改变了这一点,一切都解决了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM