2010-10-18 4 views
2

J'essaie de configurer Apache2 pour pouvoir utiliser MySQL pour authentifier les utilisateurs afin d'accéder à certaines pages. De plus, l'autorisation doit fonctionner pour que les différents groupes puissent atteindre des pages différentes.Configuration de l'authentification et de l'autorisation dans Apache2 avec MySQL

Maintenant, j'ai beaucoup googlé mais je ne trouve pas comment faire cela. Du moins pas pour la configuration que j'ai. Il ne semble pas y avoir de version de mod_auth_mysql qui supporte ma configuration.

OS X 10.6.4

Apache 2.2

Maintenant, comment puis-je atteindre cet objectif de ne pas créer ma propre connexion à une application en php mais en utilisant le support intégré de Apache2? Je suis totalement coincé sur celui-ci ...

Merci d'avance!

Cordialement, Niklas

+0

Dans ma quête pour résoudre ce problème, j'ai rencontré plusieurs problèmes. J'ai créé un nouveau post pour l'un de mes sous-problèmes: http: // stackoverflow.com/questions/4082067/get-apache2-et-mysql-working-together-getting-invalid-command-dbdriver – Nicsoft

Répondre

1

Je voudrais également utiliser une page de connexion TaylorMade, pas pop-up

....

comment puis-je obtenir ce ne pas créer ma propre connexion à l'application dans php mais en utilisant le support intégré de Apache2

La réponse courte est que vous ne pouvez pas. À moins de réécrire le code source Apache ou de créer votre propre module, vous ne pouvez pas mélanger l'authentification basée sur HTTP avec des invites de connexion non contextuelles.

Toutefois, si vous utilisez PHP, une solution à impact relativement faible consisterait à utiliser le préfixe automatique pour préfixer chaque page protégée avec une vérification de la session des utilisateurs. Évidemment, cela nécessitera un peu plus de réflexion si vous voulez l'appliquer à des fichiers autres que les fichiers source PHP (cela fonctionnera parfaitement si vous dites à Apache d'appliquer le moteur php, par exemple les fichiers .gif, mais votre script devra détecter et renvoyer le type mime approprié).

Une solution plus simple pourrait consister à placer un outil comme squid devant le serveur web en tant que proxy inverse, puis à mettre les données de gestion de session à la disposition de l'url-rewriter squid.

+0

Dans ma quête pour résoudre J'ai rencontré plusieurs problèmes. J'ai créé un nouveau post ici pour l'un de mes sous-problèmes: http://stackoverflow.com/questions/4082067/getting-apache2-and-mysql-working-together-getting-invalid-command-dbdriver – Nicsoft

1

Vous pouvez construire mod_auth_mysql de la source. Jetez un oeil à this post.

+0

Je vais vérifier dans quelques jours et revenir à ce post. Merci! – Nicsoft

+0

Cela utilise simplement les mécanismes d'authentification HTTP standard, mais avec un backend mysql pour les données. – symcbean

+0

Je pense que mod_auth_mysql est pour les anciennes versions d'Apache? J'essaie d'utiliser mod_dbd mais j'ai besoin de recompiler apache avec ces modules. – Nicsoft

1

Si vous voulez votre propre page de connexion, vous ne pouvez pas utiliser Apache pour l'authentification.

L'authentification Apache utilise la partie Authentification de la norme HTTP et, par conséquent, vous dépendez du navigateur pour gérer l'interaction avec l'utilisateur. Il y a des plugins (comme mod_auth_mysql) pour utiliser une base de données comme backend pour cela, mais Apache ne peut pas demander à l'utilisateur ses informations d'identification d'une autre manière. L'approche la plus rapide pourrait bien être de configurer Drupal ou Joomla, qui vous permettra de gérer les utilisateurs et les groupes ainsi que l'édition complète du contenu, de manière à pouvoir contrôler qui peut éditer quoi.

+0

Merci pour votre réponse . Je n'ai pas utilisé Joomla! Mais si je comprends bien, c'est un CMS, mais j'ai besoin de créer une application hautement interactive, où le but principal de l'application est pour l'utilisateur de stocker des données et pour un administrateur de créer des rapports basés sur ces données. Je ne sais pas si c'est une bonne solution. – Nicsoft

+0

Dans ma quête pour résoudre ce problème, j'ai rencontré plusieurs problèmes. J'ai créé un nouveau post ici pour l'un de mes sous-problèmes: http://stackoverflow.com/questions/4082067/getting-apache2-and-mysql-working-together-getting-invalid-command-dbdriver – Nicsoft

+0

Si vous cherchez Pour créer une application, l'authentification doit faire partie de votre application. J'avais l'impression que vous essayiez de créer un site web statique ou quelque chose comme ça. – Judson

Questions connexes