Vous êtes ici Forums
  |  Connexion
 Forums
HomeHomeForums DNNForums DNNDéveloppementDéveloppementControler lControler l'inscription
Précédente
 
Suivante
Nouveau message
06/11/2008 10:12
 
Bonjour,
 
J'aimerai savoir comment envoyer d'une page de connexion autre que celle de DNN (développée en C#), les variables login et mot de passe pour passer la main à ce que fait deja DNN (ma version 04.09.00) ? Si j'ai réussi à être clair, le but c'est que le contrôle de ce login et mot de passe saisis soit interpreté par la procédure existante de DNN, mais que les variables lui arrivent d'une autre page ! Comment paramétrer cette fonction d'appel ?
Merci de vos conseils et informations.
JM
 
Nouveau message
07/11/2008 11:08
 

Ayant réussit à faire ce que je souhaitais, j'attire juste l'attention de ceux que cela pourrait intéresser de ne pas commettre la même erreur que moi et qui m'a pris du temps. Cherchant donc à me connecter sur la page de login DNN par défaut je travaillais avec \admin\Authentication\Login.ascx, big boulette. En fonction de la configuration d'authentification et dans mon cas il fallait regarder DesktopModules\AuthenticationServices\DNN\Login.ascx 
Une fois cela compris, j'ai readapté le module façon C# (pour les besoins de mon appli).
Novice ds DNN, ce n'est peut-être pas la meilleure solution, c'est pourquoi je reste intéressé par toute autre proposition.
Cdlt

JM

 
Nouveau message
11/11/2008 02:22
 

Plusieurs remarques:

  • le système de packages d'authentification est précisément conçu pour pouvoir proposer de nouveaux mécanismes sans modifier le noyau. Il eut été préférable de copier le répertoire en question et de déclarer un nouveau provider dans le menu Host/Configuration
  • Je ne sais si la solution retenue consiste à passer user et mot de passe en paramètres http, attention à la sécurité dans ces cas la. l'API DNN fournit des methodes pour faciliter l'encryption dans de tels cas.
  • Pourquoi en premier lieu vouloir faire passer ces données si la page d'origine est dans DNN. Il suffit à n'importe quel moment d'utiliser l'API pour loguer un utilisateur directement. De mémoire, ce doit être UserController.UserLogon ou PortalSecurity.UserLogon

Jesse
Société de conseil et de service en 
informatique et systèmes d'information
 
Nouveau message
22/01/2009 11:54
 

Bonjour,

Le temps passe...Voilà que je me retrouve face à ce problème qui serait d'utiliser ce que Jesse m'avait aimablement notifié dans son 3eme point soulevé : "Il suffit à n'importe quel moment d'utiliser l'API pour loguer un utilisateur directement."
D'une page A où l'ulisateur s'est signé, je récupère son contexte, il se trouve que cet utilisateur doit mettre à jour ses informations. Etant donné qu'il ne faudrait pas qu'il se relogue sur Login.aspx, comment de cette page A je peux l'envoyer sur la page Login.aspx en passant l'étape de la signature. J'ai vu qu'un Response.Redirect("default.aspx?ctl=Login&username=" + login) permettait d'aller sur la page Login en question, seulement on doit alors ressaisir son mot de passe et cliquer sur le bouton. C'est en fait ici que ce que me réponds Jesse devrait intervenir, alors ma question c'est en fait comment l'exploiter ?
D'avance je vous remercie de vos solutions, réponses.

 
Nouveau message
22/01/2009 13:26
 

Bonjour,

commde indiqué dans mon précédent post, la methode permettant de connecter un utilisateur directement est dans  DotNetNuke.Entities.Users.UserController

et il s'agit de:

Public Shared Sub UserLogin(ByVal portalId As Integer, ByVal user As UserInfo, ByVal PortalName As String, ByVal IP As String, ByVal CreatePersistentCookie As Boolean)


Jesse
Société de conseil et de service en 
informatique et systèmes d'information
 
Nouveau message
22/01/2009 13:54
 

Cela ne fonctionne que pour une même instance n'est-ce pas ? Autrement dit, cela résout la question : "Comment connecter un utilisateur du portail B à partir du portail A".

Mais admettons que le portail A et B soient sur deux instances distinctes ? La problématique est intéressante, on retrouve parfois sur certains sites d'entreprise un espace "internet" public, et une fonction de connexion vers l'extranet privé.

 
Précédente
 
Suivante
HomeHomeForums DNNForums DNNDéveloppementDéveloppementControler lControler l'inscription