sfguard + batch = demande d' authentification!

0 views
Skip to first unread message

morganistic

unread,
Oct 3, 2008, 7:59:23 AM10/3/08
to Symfony-fr
bonjour,

j' ai fait un module comportant différentes actions devant être
exécutées la nuit via un planificateur de taches.
Le planificateur lance un navigateur, puis entre l' adresse
www.monsite.com/module/action

mais monsite est protégé par le plugin sfguard! donc quand je procède
de cette façon, il me demande une authentification.

:-(

donc comme dernier recours, je viens chercher de l'aide ici, comment
puis-je contourner sfguardplugin afin d' être capable d' exécuter mon
action la nuit via mon planificateur?
ou au pire, comment pourrais-je contourner le problème sans trop
chambouler mes actions!?

merci d' avance!

mikael.randy

unread,
Oct 5, 2008, 3:12:23 AM10/5/08
to Symfony-fr
Bonjour,

Dans le module en question, crée un dossier "config", et dans ce
dossier créé un fichier security.yml.
Dans ce fichier, tu as la possibilité de définir si une action doit
être protégée ou pas, il suffit donc de désactiver la protéction pour
ton action :

nomdelaction:
is_secure: off

Par contre, cette "désécurisation" sera effective pour tout le monde
et n'importe qui pourra exécuter cette page.

Sinon, ce que tu cherches à faire me semblerais plus adapté au système
de task. Est-ce que tu as essayé de regarder de ce côté ?

lionel chanson

unread,
Oct 5, 2008, 5:53:00 AM10/5/08
to symfo...@googlegroups.com
Bonjour,

C'est pleinement une tâche et les Task sont faites pour cela. Tu peux
reprendre je pense une bonne partie de ta logique de ton action pour
la mettre dans le fichier de tâche. Il te reste ensuite à faire un
cron qui lance ta tâche avec symfony task:mytask pour bénéficier du
chargement des libs.

Les tâches de maintenances ne doivent pas être accessible de
l'extérieur, et l'accès sans mot de passe j'en parle même pas.

++

--
Présentation gratuite de symfony par Fabien Potencier.
Le 09 Octobre à Montpellier.
infos : http://s.ymfony.com

morganistic

unread,
Oct 6, 2008, 6:05:13 AM10/6/08
to Symfony-fr
ok je ne vous ai meme pas dis merci, donc MERCI a vous deux!
je vais essayer d'utiliser les taches, je vous tiens au courant si j'
ai du mal!

merci encore!

On 5 oct, 11:53, "lionel chanson" <lionel.chan...@gmail.com> wrote:
> Bonjour,
>
> C'est pleinement une tâche et les Task sont faites pour cela. Tu peux
> reprendre je pense une bonne partie de ta logique de ton action pour
> la mettre dans le fichier de tâche. Il te reste ensuite à faire un
> cron qui lance ta tâche avec symfony task:mytask pour bénéficier du
> chargement des libs.
>
> Les tâches de maintenances ne doivent pas être accessible de
> l'extérieur, et l'accès sans mot de passe j'en parle même pas.
>
> ++
>

morganistic

unread,
Oct 6, 2008, 9:26:14 AM10/6/08
to Symfony-fr
bon alors j' ai fais :
symfony batch default monbatch frontend

afin de creer un squelette de batch,
j' ai ensuite décommenté les lignes du database manager pour avoir
accès aux bdd,
j' ai collé le contenu d' une de mes actions que je souhaitais
exécuter de nuit,
mais maintenant, quand je lance mon batch avec:

php monbatch.php

(eh oui je suis sous windows server...)
le script se lance mais j' obtiens une propel exception:
uncaught exception 'PropelException' with message [wrapped: mysql
extension not loaded in C:\wamp\bin\php\php5.25\PEAR\symfony\vendor
\propel\Propel.php:489
stack trace:
#0 c:\wamp\www\stats\lib\model\db1\om
\BaseXmlconfigPeer.php(357):Propel::getConnection('Propel');


comme si les extensions mysql n' etaient pas loadée dans mon php.ini
le probleme est que j' ai php 5.2.5 et je ne trouve pas de php-
cli.ini !!!!
pourriez-vous m' indiquer ou est le php.ini de php cli svp?

j' ai symfony 1.0.11, et php 5.2.5 sous wamp server 5.

merci d' avance les gars!

lionel chanson

unread,
Oct 7, 2008, 3:27:45 AM10/7/08
to symfo...@googlegroups.com
Bonjour,

Tu trouveras plus d'infos sur le site de php.net pour cela. Sur Debian
j'ai un répertoire php5 avec un dossier apache2 et un autre cli qui
contiennent chacun un php.ini

++

mikael.randy

unread,
Oct 7, 2008, 5:19:43 AM10/7/08
to Symfony-fr
Avec symfony 1.1, tu ne dois pas exécuter le fichier, mais passer par
l'interface CLI de symfony

./symfony default:monbatch [tes arguments]

Normalement, si tu fais
./symfony
tu devrais voir ta task apparaitre dans la liste

On 7 oct, 09:27, "lionel chanson" <lionel.chan...@gmail.com> wrote:
> Bonjour,
>
> Tu trouveras plus d'infos sur le site de php.net pour cela. Sur Debian
> j'ai un répertoire php5 avec un dossier apache2 et un autre cli qui
> contiennent chacun un php.ini
>
> ++
>

morganistic

unread,
Oct 7, 2008, 8:57:26 AM10/7/08
to Symfony-fr
OK tout fonctionne a merveille merci a tous pour votre aide notemment
lionel chanson, qui sauve vraiment la vie de tout le monde ici!
(lionel tu travilles pour sensio? si non, vas y! envoie ton cv
tranquille ;) )
sinon mikael je suis sous sf1.0 mais merci quand meme ;)

lionel chanson

unread,
Oct 7, 2008, 11:45:04 AM10/7/08
to symfo...@googlegroups.com
De rien. Et non je ne travaille pas chez sensio, mais ta remarque
flatte grandement mon égo. lol

Après ce n'est qu'un juste retour des choses, cette liste m'a sauvé la
vié également ;-)

Bonne continuation.

Reply all
Reply to author
Forward
0 new messages