【发布时间】:2019-04-30 19:43:18
【问题描述】:
社区,
我有一个在线拼凑的脚本,它允许我通过 Exchange Online 中的垃圾邮件过滤器将域/发件人添加到阻止列表中。目前,该脚本是为一个租户编写的。我希望它遍历大约 5 个租户,每个租户都有不同的凭据。
有人告诉我我需要创建 PSCredential 对象,但我不确定如何去做。或者在哪里放置代码。
脚本:
# First we need credentials to use to connect to O365
Write-Host "Enter your O365 Global Administrator credentials"
$UserCredential = Get-Credential
然后我们需要定义PS会话来连接O365
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid -Credential $UserCredential -Authentication Basic -AllowRedirection
现在我们打开会话
Import-PSSession $Session -AllowClobber
提示输入变量
$domainlist = Read-Host -Prompt 'Domain(s) to add to Block list (press ENTER if none, use single space between entries): '
$addresslist = Read-Host -Prompt 'Email address to add to Block list (press ENTER if none, use single space between entries): '
$domains = $domainlist -split " "
$addresses = $addresslist -split " "
将域添加到列表(如果有)
if (!$domainlist) {
Write-Host "No domains to add...skipping"
} else {
Write-Host "Adding domain name(s) to Default spam Block list...."
Set-HostedContentFilterPolicy -Identity Default -BlockedSenderDomains @{Add=$domains}
}
将电子邮件地址添加到列表中(如果有)
if (!$addresslist) {
Write-Host "No addresses to add...skipping"
} else {
Write-Host "Adding email address(es) to Default spam Block list...."
Set-HostedContentFilterPolicy -Identity Default -BlockedSenders @{Add=$addresses}
}
关闭 Session 否则坏事发生!!!
Remove-PSSession $Session
【问题讨论】:
标签: powershell office365 powershell-remoting