Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
894 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Authentification Synology via script php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Authentification Synology via script php

n°2336056
rufo
Pas me confondre avec Lycos!
Posté le 28-06-2019 à 15:59:01  profilanswer
 

Bonjour,
Je galère depuis des heures pour faire un truc qui me paraît tout bête. Sur un NAS Synology, j'ai une appli file station. File station est accessible depuis internet via un reverse proxy en https://file.nomdedomaine.fr, le NAS se trouvant une Livebox (je précise car ça a son importance, la livebox v3 ne gérant pas le loopback même si apparemment, y'aurait une solution que j'ai pas encore testée décrite ici : https://forum.ubuntu-fr.org/viewtopic.php?id=2012531 )
 
Sur mon NAS, dans le web station, j'ai une petite appli web qui est accessible via des comptes utilisateurs (stockés dans une BD Mysql). File station est accessible par des comptes mais locaux au NAS et qui n'ont rien à voir avec mes comptes de l'appli web.
Voulant donner accès au file station de manière transparente à mes utilisateur de l'appli web, je me suis dit : facile, je vais créer un compte générique sur le NAS qui aura accès au file station et sur l'appli web, je vais mettre un lien vers un script php qui se chargera de faire l'authentification (de manière plus ou moins cachée à l'utilisateur) vers file station en utilisant le compte générique.
 
J'ai trouvé l'API de Synology mais quand je veux faire, depuis un script php situé sur le NAS, un appel à l'url https://file.nomdedomaine.fr/webapi [...] format=sid, ça marche pas. Si je remplace https://file.nomdedomaine.fr par https://192.168.1.xx:7001, ça marche. Le problème, c'est qu'après, quand je faire la redirection vers https://file.nomdedomaine.fr, la session n'existe pas puisqu'elle a été créée pour https://192.168.1.xx:7001 :(
 
Connaissez vous une façon de se connecter au file station via un script php et permettre l'affichage de son IHM à l'utilisateur ensuite ?
Merci :)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
mood
Publicité
Posté le 28-06-2019 à 15:59:01  profilanswer
 

n°2336070
rufo
Pas me confondre avec Lycos!
Posté le 28-06-2019 à 22:55:07  profilanswer
 

Oui, c'est ça.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2336076
rufo
Pas me confondre avec Lycos!
Posté le 29-06-2019 à 19:21:42  profilanswer
 

Je ne pensais pas que ça serait si compliqué. Je sens venir les ennuis car l'IHM du file station est beaucoup basé sur du javascript :/
Je sens que je vais devoir filer le login/mdp du compte générique à mes users qui se chargeront de se connecter eux-mêmes.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2336080
rufo
Pas me confondre avec Lycos!
Posté le 29-06-2019 à 22:34:41  profilanswer
 

J'ai tenté un truc du genre avec une requête ajax en exploitant l'API d'authentification du Synology. Mais le navigateur a détecté une tentative de CSRF et a bloqué la requête sauf si j'arrive à mettre une instruction Access-Control-Allow-Origin: mon_appli.fr sur le file station.
Sauf que je ne vois pas comment faire ça et je doute que modifier à la main le code source du file station soit une bonne idée.
 
Synology fiat des applis relativement bien sécurisées : ce ne sont pas des débutants.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2336103
rufo
Pas me confondre avec Lycos!
Posté le 30-06-2019 à 19:10:07  profilanswer
 

En php, j'avais trouvé, mais c'est côté serveur qu'il faut le mettre, pas dans mon script php (j'ai essayé).
Merci pour ton aide, je vais voir si je trouve comment faire ça sur le Synology.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2336341
rufo
Pas me confondre avec Lycos!
Posté le 03-07-2019 à 17:27:39  profilanswer
 

C'est bon, j'ai fini par trouver une solution full JS :
1) via window.open() je charge l'url de mon API d'authentification Synology
 
2) avec un settimeout, j'attends x secondes pour laisser le temps à l'API de renvoyer le résultat de l'authentification. Là, je pars du principe que ça a fonctionné. A priori, pas de raison que ça plante vu que c'est moi qui aie fixé le login/mdp. Le settimeout appelle une fonction Login()
 
3) Ma fonction Login() ferme la fenêtre ouverte précédemment puis redirige l'utilisateur sur l'url de mon file station.
 
Et ça marche :) Bon, le seul truc, c'est que l'utilisateur doit valider la première fois l'autorisation des popups.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Authentification Synology via script php

 

Sujets relatifs
Erruer code java script inconnue[Script réseau] monter lecteur reseau avec variable
Petit script clavier virtuel[résolu] Authentification https avec API Géoportail
pb script VBA sous Word pour export feuilles - laisse 1 pageScript qui récupère données fichier Excel vers document
Recherche script PHP pour créer des bases de données[VB/VBA/VBS] Problème script pour exécuter des programmes
Soucis avec script overlay.Comment faire ce script ?
Plus de sujets relatifs à : Authentification Synology via script php


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR