Class: Itsi::Server::Config::AuthBasic

Inherits:
Middleware
  • Object
show all
Defined in:
lib/itsi/server/config/middleware/auth_basic.rb

Instance Method Summary collapse

Methods inherited from Middleware

#build!

Methods included from ConfigHelpers

included, load_and_register, #normalize_keys!

Constructor Details

#initialize(location, params = {}) ⇒ AuthBasic

Returns a new instance of AuthBasic.



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/itsi/server/config/middleware/auth_basic.rb', line 22

def initialize(location, params={})
  super

  unless @params[:credential_pairs]&.any?
    if File.exist?(".itsi-credentials") && !@params[:credentials_file]
      @params[:credentials_file] = ".itsi-credentials"
    end

    if @params[:credentials_file] && File.exist?(@params[:credentials_file])
      @params[:credential_pairs] = Passfile.load(@params[:credentials_file])
    end
  end

  raise "No credentials provided" unless @params[:credential_pairs]
  @params[:credential_pairs].compact!

  unless @params[:credential_pairs]&.any?
    raise "No credentials provided"
  end
end