1
0

More than 3 years have passed since last update.

Auth0 Errno::ECONNREFUSED (Failed to open TCP connection to :443

Posted at

Auth0のチュートリアルにしたがって作成していたところタイトルのエラーが発生

サンプルのリポからcloneしても同じ内容だったので、おそらく設定などの不備があると思い調査

調査したところ以前作成したnestjsの設定と全く異なる部分がなかったので、とりあえずpryを入れて一つずつみて行った結果、envからデータを上手く撮れていないことが判明

def self.jwks_hash
    binding.pry
    # TODO, ここでエラー発生
    jwks_raw = Net::HTTP.get URI("https://#{ENV['AUTH0_DOMAIN']}/.well-known/jwks.json")
    jwks_keys = Array(JSON.parse(jwks_raw)['keys'])
    Hash[
        jwks_keys
            .map do |k|
          [
              k['kid'],
              OpenSSL::X509::Certificate.new(
                  Base64.decode64(k['x5c'].first)
              ).public_key
          ]
        end
    ]
  end

どうやらこの部分のenvがnilになっていて

jwks_raw = Net::HTTP.get URI("https://#{ENV['AUTH0_DOMAIN']}/.well-known/jwks.json")

、出力すると

ENV['AUTH0_DOMAIN']
=> nil

となっていました。

なのでdotenvの設定を修正
→gemがdotenv-railsではなくdotenvだったので変更したところ

"https://#{ENV['AUTH0_DOMAIN']}/.well-known/jwks.json"
=> 
"https://my-domain.auth0.com/.well-known/jwks.json"

このように表示されました。

そして、DOMAINが通ったところで問題なくリクエストが通りましt!!!

参考記事

Auth0 Ruby on Rails TCP Error
Rails5にAuth0を利用して認証機構を最速で追加して、爆速開発環境を構築していくぜ!
Building Secure APIs with Rails 6 and Auth0
Errno::ECONNREFUSED (Failed to open TCP connection to :80 - Authenticated requests fails

1
0
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
1
0