IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

Serveur CAS et application ASP


Sujet :

ASP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut Serveur CAS et application ASP
    Bonjour,
    je ne sais pas si je suis sur le bon forum (si non je vous pris de m'excuser).
    J'ai mis en place un portail intranet et un serveur C.A.S et je souhaiterais pouvoir sans changer le code source des applications, être authentifié par le serveur C.A.S dès que je me suis authentifié via le portail.
    J'aimerais savoir si quelqu'un a déjà eu à faire cela ?
    Sinon, je suis preneur pour toutes idées.

    merci d'avance

  2. #2
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Je suis pas vrament certain que ce soit une question de langage.

    C'est plutôt de l'administration système, non?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut CASsification des applications ASP
    Bonjour,
    j'ai mis en place un serveur CAS pour une authentification SSO, maintenant je voudrais cassifier mes applications ASP. J'ai fait pour cela une page de test simple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    <html>
    <head>
    <title>Test ASP</title>
    </head>
    <body>
    <%@ Page aspcompat=true %>
    <%
    'adresse du serveur C.A.S
    Dim casServer="https://10.168.14.51:8443/cas/"
    'nom de mon serveur
    Dim myServer=Request.ServerVariables("SERVER_NAME")
    'definition de url
    Dim myUrl=Request.ServerVariables("URL")
    'variable pour la concatenation de myServer et myUrl pour faciliter l'ecriture
    Dim myPage
    Dim url
    Dim http
    'permet de savoir si on est dans une connexion securisee ou non
    Dim type=Request.ServerVariables("HTTPS")
    if type="ON" then
    myPage="https://" & myServer & myUrl
    else
    myPage="http://" & myServer & myUrl
    end if
    'Response.Write(adress)
     
    'permet de verifier si qu'on est pas connecté
    Dim userid=Session("uid")
    if userid="" then
    	Dim ticket=Request("ticket")
    	'd'abord on verifie qu'il n'y a pas de ticket
    	if ticket="" then
    		'permet de definir l'url pour la redirection vers CAS avec le nom de la page d'appel
    		'c'est-a-dire l'url qui a apres login?service=
    		url=casServer & "login?service=" & myPage
    		'permet d'etre rediriger sur le serveur cas
    		Response.Redirect(url)
    	else
    		'permet d'envoyer et de recevoir du xml, c'est un echange de donnees 
    		'au format xml entre le serveur et le client
    		http=Server.CreateObject("MSXML2.ServerXMLHTTP")
    		'permet de creer l'url pour la validation du ticket par le serveur C.A.S
    		'on met serviceValidate car on utilise la version 2.0 de C.A.S
    		url=casServer & "serviceValidate?ticket=" & ticket & "&service=" & myPage
    		'url=casServer & "serviceValidate?service=" & myServer & "&ticket=" & ticket
    		'url=casServer & "serviceValidate?service=" & myPage
    		http.open("GET", url, false)
    		http.send()
    		'split permet de decouper une chaine par rapport a un separateur
    		'ici http.responseText
    		'vbLf permet un saut de ligne
    		Dim reponse=split(http.responseText,vbLf)
    		'permet de liberer la memoire
    		http=Nothing
    			'si la connexion a reussi
    			if (reponse(0)="yes") then
    				'on recupere le userid
    				userid=reponse(1)
    				Session("uid")=reponse(1)
    			else
    				response.write("echec authentification")
    			end if
    	end if
    else
    response.write("authentification reussi")	
    end if
     
    %>
    </body>
    </html>
    La connexion au serveur se déroule parfaitement, mais lors de la redirection vers la page, j'ai des erreurs.
    J'ai pourtant une url valide : http://10.168.14.51/test2.aspx?ticke...CKzOedySrq-cas et j'ai vérifié manuellement, le ticket est bon.
    En local, j'ai les erreurs :
    • Le composant 'MSXML2.ServerXMLHTTP' ne peut pas être créé. Les composants de threads cloisonnés ne peuvent être créés que sur des pages avec une directive de page <% @ Page aspcompat=true %>
    • Lorsque j'ajoute <% @ Page aspcompat=true %>, j'ai une autre erreur qui apparaît : System.Runtime.InteropServices.COMException:L'autorité de certification n'est pas valide ou correcte

    Pourriez-vous m'aider à résoudre mon problème ?

    Merci d'avance

  4. #4
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Les directives sont les premières choses à mettre dans une page. Il faut les placer avant tout autre code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <% @ Page aspcompat=true %>
    <html>
    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut
    j'obtiens sur la page d'erreur cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Trace de la pile: 
     
     
    [COMException (0x80072f0d): L'autorité de certification n'est pas valide ou correcte
    ]
       Microsoft.VisualBasic.CompilerServices.LateBinding.InternalLateCall(Object o, Type objType, String name, Object[] args, String[] paramnames, Boolean[] CopyBack, Boolean IgnoreReturn) +776
       Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateCall(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, Boolean IgnoreReturn) +367336
       ASP.test2_aspx.__Render__control1(HtmlTextWriter __w, Control parameterContainer) +661
       System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +98
       System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +20
       System.Web.UI.Page.Render(HtmlTextWriter writer) +26
       System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +25
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +121
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +22
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2558
    Quelqu'un pour m'aider

  6. #6
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    J'ai un peu de mal à comprendre si tu fais de l'ASP3 vbscript ou du .Net C#. Tu peux le préciser?
    "Winter is coming" (ma nouvelle page d'accueil)

  7. #7
    Membre confirmé
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut
    je fais de ASP vbscript, mais je suis débutant

    j'ai modifié la ligne if (reponse(0)="yes") par if (len(reponse(0))>0)
    mais je ne suis pas sur ensuite que userid et Session("uid") soit affecté

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 30/07/2014, 19h00
  2. [Débutant] Application ASP.NET - Exécuter un .bat sur un serveur distant
    Par HidanTF2 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 08/04/2014, 11h15
  3. [IIS 7] déployer une application asp.net(c#) dans un serveur !
    Par abdou.amara92 dans le forum IIS
    Réponses: 2
    Dernier message: 08/11/2012, 13h13
  4. Réponses: 1
    Dernier message: 24/02/2012, 17h23
  5. Débugging d'applications ASP.NET sur serveur distant
    Par mioux dans le forum Visual Studio
    Réponses: 4
    Dernier message: 05/07/2007, 15h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo