Сценарий планировщика заданий с модулем MSOnline - PullRequest
0 голосов
/ 05 апреля 2019

У меня есть сценарий PS, который выполняется как запланированная задача с целью проверки некоторых критериев Active Directory.Я пытаюсь включить функцию, которая будет проверять, назначена ли отключенному пользователю лицензия E3.Эта функция работает при использовании Powershell ISE, но не в качестве запланированной задачи.

Мои первоначальные поиски такого типа функциональности говорят мне, что, возможно, не многие люди пытались это сделать, или подход недопустим.

if (!(Get-Module -Name MSOnline)) {Import-Module MSOnline}
#Logon to O365 Tenant and query for users with an E3 license, then split their UPN discarding @domain.suffix leaving their samaccountname so I can compare with AD.
$TenantUserName = "svc-blah@blah.blah"
$TenantPassword = cat "C:\blah\PK\blah.key" | ConvertTo-SecureString
$TenantCredentials = new-object -typename System.Management.Automation.PSCredential -argumentlist $TenantUserName, $TenantPassword
Connect-MsolService -Credential $TenantCredentials
$YE3s = Get-MsolUser -all | Where-Object {($_.licenses).AccountSkuId -match "reseller-account:ENTERPRISEPACK"} | select @{N='ADUSER';E={($_.UserPrincipalName).split('@')[0]}}
# Subsequent lines query AD for disabled users and compares $YE3s.aduser with $E3CheckDis
$DUWE3 = Compare-Object -ReferenceObject $E3CheckDis.samaccountname -DifferenceObject $YE3s.aduser -IncludeEqual | where {$_.SideIndicator -eq "=="}
#The sideline indicator "==" output is then sent to get-aduser
$ACCE3CHK = 
foreach ($DU in $DUWE3) 
{get-aduser $DU.InputObject -properties * | select Name,Distinguishedname,AccountExpirationDate,Employeetype,@{N='PwdLastSet'; E={[DateTime]::FromFileTime($_.PwdLastSet)}},Mail,Enabled}
#$ACCE3CHK  is then added to a email message body as a formatted table and is sent to some individuals in the dept for corrective action.

Весь сценарий работает в ISE, поскольку я вошел в систему как учетная запись, выполняющая работу, которая также является учетной записью, выполняющей запланированное задание, но выводится в электронном письме, выполняющемзадание пусто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...