該專案是一個非常基本的演示,展示瞭如何使用 OAUTH2 進行身份驗證並為 gmail、microsoft/office365 以及 hotmail.com/outlook.com/live.com 電子郵件地址發送電子郵件。最初它僅適用於 Gmail(因此得名),但後來擴展到支援其他提供者。
OAuth2 是一種開放的授權標準,用於授予對受伺服器保護的資源的存取權限。它允許應用程式或服務透過資源伺服器進行身份驗證並代表使用者存取受保護的資源,而不需要使用者直接向應用程式提供其憑證。
當使用者想要使用電子郵件用戶端或其他應用程式存取其電子郵件時,應用程式可以使用 OAuth2 向電子郵件服務進行身份驗證並要求存取使用者的電子郵件。然後,系統會提示使用者登入其電子郵件帳戶並授予對應用程式的存取權限。授予存取權限後,應用程式可以使用 OAuth2 存取權杖對電子郵件服務進行身份驗證並存取使用者的電子郵件。
使用 OAuth2 進行身份驗證有幾個好處。它允許用戶授予對其電子郵件的存取權限,而無需與應用程式共享其登入憑證,這有助於保護他們的隱私和安全。它還使用戶可以更輕鬆地從多個裝置和應用程式存取其電子郵件,因為他們只需授予一次存取權限,然後就可以使用 OAuth2 存取權杖從任何裝置對電子郵件服務進行身份驗證。
您需要建立一個名為 Globals.pas 的文件,其中包含以下常數
google_clientid
google_clientsecret 要取得這些,請造訪 https://console.cloud.google.com/apis/credentials
google_clientaccount
微軟客戶端ID
microsoft_clientaccount 要取得這些權限,請造訪 https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade Microsoft 也需要各種應用程式權限,如下所示
客戶寄至地址
客戶名稱
該專案需要 OpenSSL。您可以在 https://github.com/IndySockets/OpenSSL-Binaries 找到所需的文件
謝謝
傑弗瑞史密斯