git send-emailのGmail sendgmailの設定

git send-emailのGmail sendgmailの設定

2022年5月30日から:

Googleは、ユーザー名とパスワードのみを使用してGoogleアカウントにログインする必要があるサードパーティ製のアプリや端末の使用をサポートしていません。

これは、次のようなさまざまなアプリケーションで問題になります。git send-emailsendgmailOAuth2 資格情報を使用できるように Google が作成したツールです。

使用するにはsendgmail特定が必要です。Google Cloudの設定、設定を含むJSONをダウンロードし、名前をに変更して~/.sendgmail.json一度実行します。

$ GOPATH/bin/sendgmail [email protected] -setup

1. Ensure that you are logged in as [email protected] in your browser.

2. Open the following link and authorise sendgmail:
https://accounts.google.com/o/oauth2/auth?...

3. Enter the authorisation code:

~/.sendgmail.json含まれているため、redirect_uris":["http://localhost"]クリックしたWebサイトがlocalhostにリダイレクトされ(マイコンピュータにWebサーバーがない)、認証コードが表示されません。これを行うには、Google Cloud設定で正確に何をすべきかを説明できますか?

答え1

ワークスペースの設定説明に従ってくださいこのステップ。

Gmail APIを有効にするこのプロジェクトについて。

OAuth 同意ページを設定します。

  • 承認されたドメインがないことを克服できるかもしれません。私のものの1つを含めました(他のGoogle OAuthワークフローで使用されています)。
  • Gmail API ../auth/gmail.send の範囲が許可されていることを確認してください。他は必要ないようです。
  • 自分を登録したテストユーザーだと思います。

資格情報を作成します。

  • タイプ:OAuthクライアントID
  • アプリケーションの種類:デスクトップアプリケーション(他のアプリケーションも機能します。リンクされた指示に従ってください)

sendgmail goパッケージのインストール:go install github.com/CyCoreSystems/gmail-oauth/sendgmail@latest

設定コマンドを実行してください。あなたが含めたように。

指示に従う認証して機能しないページにリダイレクトします(redirect_uriがlocalhostなので)。

プロンプトに入力する必要がある認証コードは、機能しないリダイレクトURLから取得できます。

code以下は、GETパラメータの値(つまり、前後の文字列全体)が必要なURLの例です。code=&scope

http://localhost/?state=state&code=foobarauthcode&scope=https://mail.google.com/

認証コードを送信した後、ツールは何も出力しないようですが、パッチファイルを自分に送信するテストは成功しました。

git send-email --smtp-server=$GOPATH/bin/sendgmail [email protected] patch-test.diff

関連情報