我想在Gmail SMTP服务器上使用我的Gmail ID和密码对自己进行身份验证。我正在使用GSASL库。我有一套客户端支持的机制:匿名,外部,登录,普通,SecureID,Digest-MD5和CRAM-MD5。有人知道Gmail使用哪种机制进行用户身份验证吗?
答案 0 :(得分:5)
要了解SMTP服务器支持的身份验证机制,请发送EHLO
命令。如果您还没有构建自己的SMTP客户端,可以使用TELNET进行测试。服务器将使用它支持的ESMTP扩展进行响应,包括AUTH。例如,如果您将EHLO
命令发送到smtp.gmail.com,您会发现它目前支持4种机制:
SERVER: 220 mx.google.com ESMTP c10sm612924yhk.4
CLIENT: EHLO AR93684-PC.local
SERVER: 250-mx.google.com at your service, [75.189.236.125]
SERVER: 250-SIZE 35882577
SERVER: 250-8BITMIME
SERVER: 250-AUTH LOGIN PLAIN XOAUTH XOAUTH2
SERVER: 250 ENHANCEDSTATUSCODES
所以你的问题的答案是Login,Plain,XOAuth和XOAuth2。
请注意,XOAuth已被弃用,转而使用XOAuth2:https://developers.google.com/accounts/docs/OAuth2
答案 1 :(得分:4)
引用Google的documentation for authenticating to GMail's SMTP:
外发邮件(SMTP)服务器 - 需要TLS:smtp.gmail.com(使用身份验证)
使用身份验证:是
使用STARTTLS:是(某些客户称之为SSL)
港口:465或587
这种情况下的身份验证是“普通”。
答案 2 :(得分:1)
Mail Sender: SMTP
SMTP Server: smtp.gmail.com
Authentication: LOGIN
User: yourzuser@gmail.com
Pass: gess???
security: TLS
port: 587
至少这项工作对我来说:D欢呼