Как выполнить HTTP-аутентификацию с помощью Goliath/Heroku?
Я использую Goliath в качестве сервера приложений и пытаюсь преобразовать " Ruby - безопасную среду размещения вашего общедоступного приложения из пользователей и ботов", чтобы она применима к моему приложению Goliath.
Я пытаюсь использовать Rack::Static
но я не уверен, как написать код. Я пытался что-то вроде:
class Application < Goliath::API
use(Rack::Lock)
Но я не совсем уверен, как перевести ссылку, которую я разместил.
Я открыт для других альтернатив, мне просто нужно защитить весь свой сайт паролем.
1 ответ
Вы пытаетесь использовать Rack::Static для обслуживания статических файлов или Rack::Basic::Auth для обработки аутентификации?
Ничто не должно мешать вам положить
use Rack::Auth::Basic, "Restricted Area" do |username, password|
[username, password] == ['admin', 'admin']
end
в вашем приложении Голиафа. Rack::Basic::Auth должен нормально работать в асинхронной среде, поскольку он ничего не делает на пути возврата, поэтому мы можем безопасно "пропустить" промежуточное программное обеспечение на выходе из обработчика.
Если вы хотите настроить Rack::Static, взгляните на пример template.rb в каталоге примеров Goliath.