Cu Microsoft dezactivează autentificarea de bază în Exchange Online, mi-am propus să adaug suport pentru autentificare modernă în aplicația noastră. Aplicația noastră trimite alerte de bază prin e-mail. În prezent, folosim autentificarea de bază SMTP sau releul deschis pentru aceasta, dar Modern Auth ar fi un plus bun.
Pentru a înțelege pe deplin procesul, aș dori să parcurg manual întregul proces de e-mail. Am un chiriaș de dezvoltare la Microsoft, în care am înregistrat aplicația noastră. Nu am probleme în achiziționarea simbolului Oauth cu un domeniu de e-mail. Este comunicarea cu serverul SMTP prin care nu pot ajunge.
Deoarece comunicarea trebuie criptată, folosesc openssl (în loc de telnet). Mă conectez la server cu această comandă:
openssl s_client -connect smtp.office365.com:587 -crlf -starttls smtp
Există ceva feedback în legătură cu negocierea SSL și apoi serverul răspunde cu:
250 SMTPUTF8
În acel moment, cred că ar trebui să folosesc comanda EHLO. Totuşi, după
EHLO
Răspunsul este simplu (Serverul se modifică la fiecare încercare)
' [AM4PR0101CA0056.eurprd01.prod.exchangelabs.com]
În acest moment nu sunt sigur ce să fac. Cred că poate fi necesar să inserați un domeniu după comanda ehlo (pentru a identifica chiriașul online Microsoft la care să vă conectați?). Cu toate acestea, indiferent de domeniul pe care l-am inserat, răspunsul este întotdeauna:
501 5.5.4 Nume de domeniu nevalid [AM4PR0101CA0056.eurprd01.prod.exchangelabs.com]
Poate cineva să explice cum să inițiezi comunicații cu un chiriaș Microsoft Exchange Online prin OpenSSL? Ce pun dupa EHLO? Mă conectez la adresa corectă? Încerc doar să ajung la un punct în care pot lansa o comandă AUTH XOAUTH2 pentru a mă autentifica pe chiriașul meu.
Am reușit să fac întregul proces pe serverul smtp al Gmail (smtp.gmail.com). Acolo, nu contează ce adăugați după comanda ehlo, după ce o dați, veți fi întâmpinat și puteți continua să vă autentificați cu diverse comenzi AUTH.