2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Salesforce CLI(SFDX)の組織認証でTIMEOUTする際の対処法

Last updated at Posted at 2021-04-12

事象

SFDXで組織認証のコマンドを叩くと、localhostのポート1717へのリダイレクトが失敗して認証自体も失敗する。
開発環境はWindows 10とPowerShell 5.1である。

PS > sfdx force:auth:web:login -r https://test.salesforce.com -a sample@sample.com
ERROR running force:auth:web:login: connect ETIMEOUT XXX.XXX.XXX.XXX:443

結論

自分の場合は下記の環境変数を設定することで解消した。
変数値はサンプルであり、本来は実際のプロキシサーバーのアドレスを入れる。

# .NETのライブラリを使用してプロキシサーバーのアドレスを出力
PS > $WebProxy = [System.Net.WebRequest]::GetSystemWebProxy()
PS > $WebProxy.GetProxy("https://google.com") | Select -ExpandProperty OriginalString
http://proxy.com:8080

# 上記で出力したアドレスを環境変数「HTTP_PROXY」に設定
PS > $env:HTTP_PROXY="http://proxy.com:8080"
# HTTPS用の環境変数はプロトコルをHTTPSにする
PS > $env:HTTPS_PROXY="https://proxy.com:8080"

改めて認証用のコマンドを叩くと、組織認証に成功する。

PS > sfdx force:auth:web:login -r https://test.salesforce.com -a sample@sample.com
Successfully authorized sample@sample.com with org ID XXXXXXXXXXXXXXX
You may now close the browser

ログイン用に開かれたブラウザ画面は閉じてしまって良い。

なお、上記の環境変数はセッション中に限り有効である。
他のセッションやVisual Studio Codeの拡張機能を利用した認証の場合、
下記のコマンドを使用して上記で設定した値を環境変数として永続化する。
コントロールパネル経由で設定してももちろんよい。

# 管理者権限でPowerShellを開くこと
PS > [System.Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://proxy.com:8080", "Machine")
PS > [System.Environment]::SetEnvironmentVariable("HTTPS_PROXY", "https://proxy.com:8080", "Machine")

システム環境変数を設定したら、PCを再起動すること。

上記以外には下記の対処法があるらしい。

  • SFDXをバージョンアップする
  • 認証時に入力するSalesforceのドメインを「私のドメイン」にする (XXX.my.salesforce.comのようなURL)
  • 認証時にコールバックされるURLのポート番号を1717以外に設定する

原因

OAuthによる認証の過程でlocalhostの1717番へリダイレクトされるが、プロキシがあるせいでうまく遷移せずタイムアウトするのが原因だと思われる。

参照

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?