该项目是一个非常基本的演示,展示了如何使用 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 找到所需的文件
谢谢
杰弗里·史密斯