2016-06-16 1 views
1

나는 우리의 마이크로 소프트 오피스 365 환경에서 2 기존 사용자를위한 문제없이 100 % 작동하는 스크립트가 있습니다. 우리가 사용하는 새로운 "서비스 계정"을 생성하고 동일한 스크립트를 사용하는 동안은 실패합니다.보내기-은 MailMessage PowerShell을 사무실에 365

몇 가지 조사를 수행, 내가 볼과 다음 사항을 해결 한 :

  • 자격 증명 및 암호는 모두 outlook.office365.com 및 RDP를 통해 우리의 도메인이
  • 나는의 암호를 재설정 한에 로그인 할 수 있습니다 계정과 나는 우리가 UPN을 사용하고 있는지 확인 한 마이크로 소프트 오피스 365
  • 와 함께 다시는 - 동기화 됨 만이 아니라 SMTP 이름
  • 나는 사서함 위임 설정이 명시 적으로 대신 NT AUTHORITY \ 셀프 기본에 가정의 UPN 이름 한 확인했습니다 (스크린 샷 li
  • SSL 우리는 테스트 목적으로 '도메인 관리자'에 계정을 상승했다
  • 스크립트에서 사용할 수 있습니다) 아래 nked
  • 내가 계정을 사용하여 Windows에 로그인 한 후이 없었다 보장하기 위해 스크립트를 실행 ISE와 같은 이상한 문제가 아직 내 자격 증명을 사용하고 있습니다.

마지막 2 개 항목에서 알 수 있듯이, 지금은 빨대를 마주하고 있으며 약간의 도움을 심각하게 사용할 수 있습니다!

$username = "[email protected]" 
$password = "PASSWORD" | convertto-securestring -AsPlainText -Force 

$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password 
$smtp = "smtp.office365.com" 
$port = "587" 
$from = "[email protected]" 
$to = "[email protected]" 
$subject = "This is my Subject Line" 
$body = "<b>This is the body of my email.</br>With <font color=`"red`">OPTIONAL</font> HTML tags</b>" 

Send-MailMessage -SmtpServer $smtp -Port $port -UseSsl -Credential $cred -From $from -To $to -Subject $subject -Body $body -BodyAsHtml -Verbose 

그리고 이것은 출력 : 우리의 악몽은 (단지 사용자 이름, 암호를 변경하여, 변수에서) 그대로 정확히이 개 다른 계정과 협력 여기

스크립트 때문이다 -Verbose 스위치를 사용하십시오.

Send-MailMessage : SMTP 서버에 보안 연결이 필요하거나 클라이언트가 인증되지 않았습니다. 서버 응답 : 5.7.57 SMTP; 클라이언트가 MAIL FROM 중에 익명 메일을 보내도록 인증되지 않았습니다. 줄에 : 12 문자 : 1 + Send-MailMessage -SmtpServer $ smtp -Port $ port -UseSsl -Credential $ cred -From $ ... + ~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation (System.Net.Mail.SmtpClient :려면 SmtpClient) -은 MailMessage 보내기] SmtpException + FullyQualifiedErrorId : SmtpException, Microsoft.PowerShell.Commands.SendMailMessage

Here is a screenshot of the account settings:

답변

0

암호가 복잡 할 수 있습니다. 나는 동일한 문제가 있었고 암호를 덜 복잡한 것으로 변경하여 효과적이었습니다.