[RUBY] Lors de l'installation de l'authentification de base, je ne parviens pas à me connecter à Heroku.

スクリーンショット 2020-11-04 17.42.50.png

Contexte

Je souhaite introduire l'authentification de base et fournir la sécurité minimale nécessaire. Je l'ai introduit deux fois dans le passé en tant que pratique de la certification de base, et à ce moment-là, c'était facile, alors je voulais l'introduire cette fois également. Cependant, lorsque je l'ai installé, même si cela fonctionnait normalement dans l'environnement local et que je pouvais me connecter, il était joué même avec le nom d'utilisateur et le mot de passe corrects dans l'environnement de production.

Qu'est-ce qui s'est passé

Tout d'abord, pour vérifier la situation actuelle, j'ai vérifié à nouveau comment elle serait affichée par git push heroku master.

% git push heroku master
Everything up-to-date

Puisque tout est à jour, j'ai émis l'hypothèse que j'avais commis sur github ou exécuté une commande telle que git push heroku master avant de définir les variables d'environnement. Après avoir fait un commit vide, j'ai pensé que je devais refaire git push heroku master, alors je l'ai lancé.

% git commit --allow-empty -m "Nom de validation"

% git push heroku master
Mais je n'ai pas pu me connecter.

Cause

La description en privé décrite dans application_controller.rb ne correspondait pas au nom de la variable d'environnement fournie sur heroku.

app/controllers/application_controller.rb


  def basic_auth
    authenticate_or_request_with_http_basic do |username, password|
      username == ENV["BASIC_AUTH_USER"] && password == ENV["BASIC_AUTH_PASSWORD"]
    end
  end
% heroku config

===Nom de l'application Config Vars
BASIC_AUTH_PASSWORD:      *****
BASIC_AUTH_USERNAME:      *****

approche

Vous pouvez le remplacer par le même nom afin que les deux variables d'environnement soient liées. Dans ce cas, si je l'ai unifié à USERNAME ou USER et que je l'ai élevé à Heroku, j'ai pu me connecter normalement.

Recommended Posts

Lors de l'installation de l'authentification de base, je ne parviens pas à me connecter à Heroku.
Introduction de l'authentification de base à Heroku [Spring Framework]
Comment introduire l'authentification de base
Implémenter l'authentification de base en Java
Les rails ne peuvent pas être installés sur Mac