J'ai pas bien compris ce que tu veux faire.
- Est-ce que tu souhaites que DotNetNuke n'apparaisse que pour l'authentification / gestion des users ? Par exemple le module Login redirige directement vers le site ASP après connexion.
- Ou est-ce que tu souhaites que les pages ASP soient dispersées parmi un site DotNetNuke ? Par exemple une entrée du SolPartmenu est en fait un lien vers une page ASP, lien qui bien sûr n'est accessible qu'une fois connecté avec Dnn.
Sinon il y a toujours la solution du skin qui ne contient qu'une Iframe unique. En fait, quatre tokens, [USER], [LOGIN], [SOLPARTMENU] et [CONTENTPANE]. Le skin est presque transparent et vient entourer les pages ASP, il n'assure que les fonctions d'authentification et de connexion, et l'affichage du module IFrame est un module réservé à un rôle Dnn. Couplé à la méthode du cookie ça devrait le faire, pour éloigner les petits malins qui auraient su relever l'url de la page source de l'IFrame.
Donc comme je disais tu peux reprendre le cookie auth de Dnn à l'ouverture d'une page ASP, et en vérifier la validité. Tu auras besoin du hash contenu dans web.config pour le décrypter, et lire les informations et notament la date de péromption du cookie. (Cookie périmé = Redirection). Comme ça un accès externe sera empêché. Regarde le code source de Dnn pour en savoir plus là dessus, il y a sûrement une fonction toute prête qui fait ça car ce cas n'est pas rare, tu y trouveras toutes les méthodes qu'il faut. (fonction IsMember je crois).
Tu peux aussi t'amuser à extraire complètement le processus d'identification de Dnn pour le rapporter vers ton code ASP, mais dans ce cas tu ferais mieux de te tourner vers une solution d'authentification propre à ASP, comme on en trouve de nombreux sur le web, car ce processus est ancré bien profond dans le code.
Autrement, il faut hériter de DotNetNuke pour effectuer un appel du genre
If IsInRole("Registered Users") Or IsInRole("Administrators") Then
seb