all demo
This commit is contained in:
29
jenkins/newmailbox.ps1
Normal file
29
jenkins/newmailbox.ps1
Normal file
@@ -0,0 +1,29 @@
|
||||
$Cred = New-Object System.Management.Automation.PSCredential ('adm_exch@domain', (ConvertTo-SecureString 'superpass' -AsPlainText -Force))
|
||||
|
||||
$UserName=$args[0]
|
||||
$Email=$args[1]
|
||||
$MailPass=$args[2]
|
||||
$NeedSharedMail=$args[3]
|
||||
|
||||
Write-Host $UserName
|
||||
Write-Host $Email
|
||||
Write-Host $MailPass
|
||||
Write-Host $NeedSharedMail
|
||||
|
||||
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://win2016-dc-exch.domain/powershell/ -Authentication Basic -AllowRedirection -Credential $Cred
|
||||
Import-PSSession $Session -DisableNameChecking -AllowClobber
|
||||
|
||||
if(Get-Mailbox $Email) { Write-Host "$Email is ALREADY create" }
|
||||
else { New-Mailbox -Name "$UserName" -UserPrincipalName "$Email" -Password (ConvertTo-SecureString "$MailPass" -AsPlainText -Force) -DisplayName "$UserName" -OrganizationalUnit NSD }
|
||||
Set-Mailbox "$Email" -CustomAttribute1 "$MailPass" -Password (ConvertTo-SecureString "$MailPass" -AsPlainText -Force) -Force -Confirm:$false
|
||||
|
||||
if($NeedSharedMail -eq "True")
|
||||
{
|
||||
Add-MailboxPermission -User "$Email" -AccessRights FullAccess -InheritanceType All Shared@domain
|
||||
Add-ADPermission -Identity "CN=shared,OU=Shared,DC=nausd,DC=local" -User "$Email" -ExtendedRights "Send As"
|
||||
Set-Mailbox Shared -GrantSendOnBehalfTo "$Email"
|
||||
}
|
||||
|
||||
Get-Mailbox -OrganizationalUnit NSD -ResultSize Unlimited | Format-List DisplayName, WindowsEmailAddress, CustomAttribute1 | Out-File -Encoding UTF8 mailbox.nausd
|
||||
|
||||
Remove-PSSession $Session
|
||||
Reference in New Issue
Block a user