このプロジェクトは、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_clientアカウント
Microsoft_clientid
これらを取得するには、https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade にアクセスしてください。Microsoft では、以下に示すように、さまざまなアプリのアクセス許可も必要になります。
クライアントがアドレスに送信する
クライアント名
このプロジェクトには OpenSSL が必要です。必要なファイルは https://github.com/IndySockets/OpenSSL-Binaries で見つけることができます。
ありがとう
ジェフリー・スミス