2011-08-02 2 views
3

Quelle est la manière la plus simple d'autoriser plusieurs utilisateurs dans une application Web Sinatra? J'ai déjà utilisé une classe d'autorisation qui permet un nom d'utilisateur et un mot de passe, mais que se passe-t-il si je veux permettre aux utilisateurs de s'inscrire pour une application Web simple et leur permettre toutes leurs informations de connexion?Application Sinatra avec plusieurs utilisateurs

Merci beaucoup!

Répondre

0

Si auth HTTP de base est suffisant, je vous recommande de définir deux méthodes comme celle-ci:

helpers do 

    def protected! 
    unless authorized? 
     response["WWW-Authenticate"] = 'Basic realm="Protected Area"' 
     throw(:halt, [401, "Not authorized\n"]) 
    end 
    end 

    def authorized? 
    @auth ||= Rack::Auth::Basic::Request.new(request.env) 
    if @auth.provided? && @auth.basic? && @auth.credentials 
     username,password = @auth.credentials 
     # verify credentials are correct 
    end 
    end 

end 

Appel protected! de toute action qui doit être protégé (ou utiliser un bloc before pour tout protéger). Je vous laisse la vérification des informations d'identification car je ne sais pas comment vous stockez les informations de compte d'utilisateur.

0

La gemme sinatra-authentication ressemble à une solution simple et puissante pour ajouter des utilisateurs, l'authentification et les permissions aux applications sinatra.

Questions connexes