установить подпись для пользователей Exchange онлайн с помощью powershell, - PullRequest
1 голос
/ 05 марта 2020

Я новичок в использовании персонала Microsoft, я хочу установить Signatur для всех пользователей Exchange в сети (администратор, а не администратор), использующих Powerdshell,

, например, чтобы вывести пользователя из Active Directory, который мы можем использовать это утверждение в powershell:

$ AD_User = Get-ADUser $ UserName -Properties Город, Компания, Описание, StreetAddress

, но как мы можем вывести список пользователей из Exchange онлайн или Azure ( не Active Directory), но я хочу вывести список всех пользователей из Exchange онлайн, а затем каждого пользователя, мне нужны его свойства.

Надеюсь, вы поможете мне

1 Ответ

0 голосов
/ 05 марта 2020

Ниже приведен PowerShell, написанный Беном Норкаттом , который я использую.

Часть 1. Создание файлов сигнатур для более поздних версий pu sh в Office 365

# https://4sysops.com/archives/add-a-signature-to-office-365-emails-with-powershell/

#import the active directory module which is needed for Get-ADUser
import-module activedirectory

#set folder location for files, the folder must already exist
$save_location = 'c:\file_location\'

#$users = Get-ADUser -filter * -searchbase "OU=Testing,OU=Staff,OU=Test Users,DC=bigcheese,DC=com" -Properties *  -Credential bigcheese\admin -Server bigcheese.com
$users = Get-ADUser -filter * -searchbase "OU=Testing,OU=Staff,OU=Test Users,DC=bigcheese,DC=com" -Properties *

foreach ($user in $users) {
  $full_name = “$($user.GivenName) $($User.Surname)”
  $account_name = "$($User.sAMAccountName)"
  $job_title = "$($User.title)"
  $location = "$($User.office)"
  $dept = "$($User.department)"
  $comp = "$($User.company)"
  $email = "$($User.emailaddress)"
  $phone =  "$($User.telephoneNumber)"
  $logo = "$($User.wWWHomePage)"

  #We need to construct and write the html signature file
  $output_file = $save_location + $account_name + ".htm"
  Write-Host "Now attempting to create signature html file for " $full_name
  "<span style=`"font-family: calibri,sans-serif;`"><strong>" + $full_name + "</strong><br />", $job_title + " - " + $location + "<br />", $dept + "<br />", $comp + "<br />", $phone + "<br />", "</span><br />", "<img alt=`"corporate logo`" border=`"0`" height=`"90`" src=`"" + $logo + "`" width=`"385`" />" | Out-File $output_file
}

Часть 2: Pu sh файлы подписи для Office 365

#set folder location for files, the folder must allready exist
$save_location = 'file_location'
$email_domain = '@bigcheese.com'

#connect to O365 tenant
$Cred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $Cred -Authentication Basic –AllowRedirection
Import-PSSession $Session

#Get a list of all the filenames in the target folder
$sig_files = Get-ChildItem -Path $save_location

#Now push the html to the users signature
foreach ($item in $sig_files) {

  $user_name = $($item.Basename) + $email_domain
  $filename = $save_location + $($item.Basename) + ".htm"

  Write-Host "Now attempting to set signature for " $user_name
  set-mailboxmessageconfiguration -identity $user_name -signaturehtml (get-content $filename) -autoaddsignature $true 
}

#disconnect O365 connection
get-PSSession | remove-PSSession
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...