สำหรับไคลเอ็นต์ที่ไม่ใช่ Gmail นั้น Gmail รองรับโปรโตคอล IMAP, POP และ SMTP มาตรฐาน เราได้ขยายเซิร์ฟเวอร์ IMAP, POP และ SMTP ของ Gmail เพื่อรองรับการให้สิทธิ์ผ่านโปรโตคอล OAuth 2.0 ซึ่งเป็นมาตรฐานอุตสาหกรรม
โปรโตคอล
IMAP, POP และ SMTP ใช้เลเยอร์การตรวจสอบสิทธิ์และความปลอดภัยอย่างง่าย (SASL) มาตรฐานโดยใช้คำสั่ง IMAP AUTHENTICATE
, POP AUTH
และ SMTP AUTH
ดั้งเดิมในตัวเพื่อตรวจสอบสิทธิ์ผู้ใช้ กลไก SASL XOAUTH2 ช่วยให้ไคลเอ็นต์ระบุข้อมูลเข้าสู่ระบบ OAuth 2.0 เพื่อการตรวจสอบสิทธิ์ได้ เอกสารประกอบโปรโตคอล SASL XOAUTH2 อธิบายกลไก SASL XOAUTH2 อย่างละเอียด และมีไลบรารีและตัวอย่างที่ใช้โปรโตคอลนี้
การเชื่อมต่อขาเข้ากับเซิร์ฟเวอร์ IMAP ที่ imap.gmail.com:993
และเซิร์ฟเวอร์ POP ที่ pop.gmail.com:995
ต้องใช้ SSL เซิร์ฟเวอร์ SMTP ขาออก smtp.gmail.com
รองรับ TLS หากไคลเอ็นต์เริ่มต้นด้วยข้อความธรรมดา ก่อนที่จะออกคำสั่ง STARTTLS ให้ใช้พอร์ต 465
(สำหรับ SSL) หรือพอร์ต 587
(สำหรับ TLS)
ขีดจำกัดระยะเวลาของเซสชัน
เซสชัน POP ของ Gmail มีระยะเวลาจำกัดประมาณ 7 วัน เซสชัน IMAP ของ Gmail จะจำกัดไว้ที่ประมาณ 24 ชั่วโมง หากเซสชันได้รับการตรวจสอบสิทธิ์โดยใช้ข้อมูลเข้าสู่ระบบ OAuth เซสชันจะจำกัดไว้ที่ระยะเวลาที่โทเค็นเพื่อการเข้าถึงที่ใช้มีผล (โดยปกติคือ 1 ชั่วโมง) เซสชันในบริบทนี้คือการเชื่อมต่อ TCP อย่างต่อเนื่อง
เมื่อเวลาผ่านไปและเซสชันหมดอายุ Gmail จะปิดการเชื่อมต่อพร้อมข้อความที่ระบุว่าเซสชันหมดอายุแล้ว หลังจากนั้น ลูกค้าจะเชื่อมต่อใหม่ ตรวจสอบสิทธิ์อีกครั้ง และดำเนินการต่อได้ หากใช้ OAuth ให้ตรวจสอบว่าโทเค็นเพื่อการเข้าถึงที่ใช้ถูกต้อง (หากพยายามใช้โทเค็นเพื่อการเข้าถึงที่เก่ากว่า 1 ชั่วโมง โทเค็นอาจไม่ถูกต้อง)
ไลบรารีและตัวอย่าง
การเข้าถึงอีเมลโดยใช้ IMAP หรือ POP และการส่งอีเมลโดยใช้ SMTP มักจะดำเนินการโดยใช้ไลบรารี IMAP และ SMTP ที่มีอยู่เพื่อความสะดวก ตราบใดที่ไลบรารีเหล่านี้รองรับเลเยอร์การตรวจสอบสิทธิ์และความปลอดภัยอย่างง่าย (SASL) ก็ควรจะใช้ได้กับกลไก SASL XOAUTH2 ที่ Gmail รองรับ
นอกเหนือจากเอกสารประกอบเกี่ยวกับโปรโตคอล SASL XOAUTH2 แล้ว คุณอาจต้องอ่านการใช้ OAuth 2.0 เพื่อเข้าถึง Google APIs เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการติดตั้งใช้งานไคลเอ็นต์ OAuth 2.0
หน้าไลบรารีและตัวอย่างมีตัวอย่างโค้ดในภาษาต่างๆ ที่ได้รับความนิยมโดยใช้กลไก SASL XOAUTH2 กับ IMAP หรือ SMTP