Problème Affichage pages asp

Le
Jean-Michel
Bonjour,

Mon système est un xp pro, j'utilise IIS comme serveur web.

J'ai écrit avec VB.Net en asp : un service Web asp qui propose une méthode
d'envoi de données et une méthode de mise à jour de données. le service web
fait appel à une base de données access.

D'autre part , j'ai écrit une application client web asp qui fait appel à
mon service web pour l'affichage et la mise à jour des données.

Je n'arrive pas à exécuter mes pages web clients depuis internet j'ai le
message suivant (je vous accorde que ce n'est pas très lisible, j'ai fait un
copier-coller).

Si quelqu'un a assez d'éléments pour me guider dans la voie à suivre, je ne
pense pas que ce soit un problème de sécurité parce que quand j'enlève de mes
pages asp l'accès aux données je peux accéder à mes pages depuis internet.

Voici le message d'erreur qui s'affiche sur le poste client.

D'avance, merci pour votre aide,

Jean-Michel

Détails de l'exception: System.Web.Services.Protocols.SoapException:
System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu traiter la
demande. > System.Data.OleDb.OleDbException: Erreur non spécifiée at
System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
System.Data.OleDb.OleDbConnection.InitializeProvider() at
System.Data.OleDb.OleDbConnection.Open() at
System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
ConnectionState& originalState) at
System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet
dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand
command, CommandBehavior behavior) at
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
CoureurWebService.CoureurService.GetCoureur() Fin de la trace de la pile
d'exception interne

Erreur source:

Une exception non gérée s'est produite lors de l'exécution de la demande Web
actuelle. Les informations relatives à l'origine et l'emplacement de
l'exception peuvent être identifiées en utilisant la trace de la pile
d'exception ci-dessous.

Trace de la pile:


[SoapException: System.Web.Services.Protocols.SoapException: Le serveur n'a
pas pu traiter la demande. > System.Data.OleDb.OleDbException: Erreur non
spécifiée
at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
at System.Data.OleDb.OleDbConnection.InitializeProvider()
at System.Data.OleDb.OleDbConnection.Open()
at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
ConnectionState& originalState)
at System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32
startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at CoureurWebService.CoureurService.GetCoureur()
Fin de la trace de la pile d'exception interne ]

System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
methodName, Object[] parameters)
CoureurWebClient.localhost.CoureurService.GetCoureur() +34
CoureurWebClient.WebForm1.Page_Load(Object sender, EventArgs e) +73
System.Web.UI.Control.OnLoad(EventArgs e)
System.Web.UI.Control.LoadRecursive()
System.Web.UI.Page.ProcessRequestMain()



--
Jean-Michel
  • Partager ce contenu :
Vos réponses Page 1 / 2
Trier par : date / pertinence
Paul Bacelar
Le #12065661
Vous avez un problème sur la méthode "Open" de votre connection. Vérifiez
votre chaîne de connexion.
--
Paul Bacelar

"Jean-Michel" news:
Bonjour,

Mon système est un xp pro, j'utilise IIS comme serveur web.

J'ai écrit avec VB.Net en asp : un service Web asp qui propose une méthode
d'envoi de données et une méthode de mise à jour de données. le service


web
fait appel à une base de données access.

D'autre part , j'ai écrit une application client web asp qui fait appel à
mon service web pour l'affichage et la mise à jour des données.

Je n'arrive pas à exécuter mes pages web clients depuis internet j'ai le
message suivant (je vous accorde que ce n'est pas très lisible, j'ai fait


un
copier-coller).

Si quelqu'un a assez d'éléments pour me guider dans la voie à suivre, je


ne
pense pas que ce soit un problème de sécurité parce que quand j'enlève de


mes
pages asp l'accès aux données je peux accéder à mes pages depuis internet.

Voici le message d'erreur qui s'affiche sur le poste client.

D'avance, merci pour votre aide,

Jean-Michel

Détails de l'exception: System.Web.Services.Protocols.SoapException:
System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu traiter


la
demande. ---> System.Data.OleDb.OleDbException: Erreur non spécifiée at
System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
System.Data.OleDb.OleDbConnection.InitializeProvider() at
System.Data.OleDb.OleDbConnection.Open() at
System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
ConnectionState& originalState) at
System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet
dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand
command, CommandBehavior behavior) at
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
CoureurWebService.CoureurService.GetCoureur() --- Fin de la trace de la


pile
d'exception interne ---

Erreur source:

Une exception non gérée s'est produite lors de l'exécution de la demande


Web
actuelle. Les informations relatives à l'origine et l'emplacement de
l'exception peuvent être identifiées en utilisant la trace de la pile
d'exception ci-dessous.

Trace de la pile:


[SoapException: System.Web.Services.Protocols.SoapException: Le serveur


n'a
pas pu traiter la demande. ---> System.Data.OleDb.OleDbException: Erreur


non
spécifiée
at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
at System.Data.OleDb.OleDbConnection.InitializeProvider()
at System.Data.OleDb.OleDbConnection.Open()
at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
ConnectionState& originalState)
at System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32
startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at CoureurWebService.CoureurService.GetCoureur()
--- Fin de la trace de la pile d'exception interne ---]




System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
Message message, WebResponse response, Stream responseStream, Boolean
asyncCall)
System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
methodName, Object[] parameters)
CoureurWebClient.localhost.CoureurService.GetCoureur() +34
CoureurWebClient.WebForm1.Page_Load(Object sender, EventArgs e) +73
System.Web.UI.Control.OnLoad(EventArgs e)
System.Web.UI.Control.LoadRecursive()
System.Web.UI.Page.ProcessRequestMain()



--
Jean-Michel








Jean-Michel
Le #12065651
Bonjour Paul,

Merci pour votre aide, mais je voudrais juste préciser un point, en local
mon appli fonctionne correctement, est-ce alors possible dans ce cas que ce
soit un problème de connexion ?

Quand vous parlez de connexion, vous pensez bien à la connexion à la base de
données ?

Je ne suis plus tout à fait débutant, mais encore trop peu expérimenté,
mes questions vous paraîtront peut-être simplettes !

En tout cas merci pour votre temps,

Jean-Michel


"Paul Bacelar" a écrit :

Vous avez un problème sur la méthode "Open" de votre connection. Vérifiez
votre chaîne de connexion.
--
Paul Bacelar

"Jean-Michel" news:
> Bonjour,
>
> Mon système est un xp pro, j'utilise IIS comme serveur web.
>
> J'ai écrit avec VB.Net en asp : un service Web asp qui propose une méthode
> d'envoi de données et une méthode de mise à jour de données. le service
web
> fait appel à une base de données access.
>
> D'autre part , j'ai écrit une application client web asp qui fait appel à
> mon service web pour l'affichage et la mise à jour des données.
>
> Je n'arrive pas à exécuter mes pages web clients depuis internet j'ai le
> message suivant (je vous accorde que ce n'est pas très lisible, j'ai fait
un
> copier-coller).
>
> Si quelqu'un a assez d'éléments pour me guider dans la voie à suivre, je
ne
> pense pas que ce soit un problème de sécurité parce que quand j'enlève de
mes
> pages asp l'accès aux données je peux accéder à mes pages depuis internet.
>
> Voici le message d'erreur qui s'affiche sur le poste client.
>
> D'avance, merci pour votre aide,
>
> Jean-Michel
>
> Détails de l'exception: System.Web.Services.Protocols.SoapException:
> System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu traiter
la
> demande. ---> System.Data.OleDb.OleDbException: Erreur non spécifiée at
> System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> System.Data.OleDb.OleDbConnection.InitializeProvider() at
> System.Data.OleDb.OleDbConnection.Open() at
> System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
> ConnectionState& originalState) at
> System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
> startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet
> dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand
> command, CommandBehavior behavior) at
> System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> CoureurWebService.CoureurService.GetCoureur() --- Fin de la trace de la
pile
> d'exception interne ---
>
> Erreur source:
>
> Une exception non gérée s'est produite lors de l'exécution de la demande
Web
> actuelle. Les informations relatives à l'origine et l'emplacement de
> l'exception peuvent être identifiées en utilisant la trace de la pile
> d'exception ci-dessous.
>
> Trace de la pile:
>
>
> [SoapException: System.Web.Services.Protocols.SoapException: Le serveur
n'a
> pas pu traiter la demande. ---> System.Data.OleDb.OleDbException: Erreur
non
> spécifiée
> at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
> at System.Data.OleDb.OleDbConnection.InitializeProvider()
> at System.Data.OleDb.OleDbConnection.Open()
> at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
> ConnectionState& originalState)
> at System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
> startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> CommandBehavior behavior)
> at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32
> startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> CommandBehavior behavior)
> at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> at CoureurWebService.CoureurService.GetCoureur()
> --- Fin de la trace de la pile d'exception interne ---]
>
>
System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
Message message, WebResponse response, Stream responseStream, Boolean
asyncCall)
> System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> methodName, Object[] parameters)
> CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> CoureurWebClient.WebForm1.Page_Load(Object sender, EventArgs e) +73
> System.Web.UI.Control.OnLoad(EventArgs e)
> System.Web.UI.Control.LoadRecursive()
> System.Web.UI.Page.ProcessRequestMain()
>
>
>
> --
> Jean-Michel
>
>
>
>
>
>





Paul Bacelar
Le #12065411
Oui, c'est bien la connexion à la BDD.

La callstack que vous nous avez donnée semble sans ambiguïté. C'est dans la
méthode Open qui est appelé en interne par Fill d'un DbDataAdapter que le
problème ce produit.

Il ce peut que cela soit la commande du Fill qui n'est pas bonne puisque la
connexion est ouvert sur cette méthode.

Le plus probable semble un problème de sécurité.

Vérifiez votre impersonnalisation de l'application ASP.NET (dans le
web.config) et l'accès aux pages interdites aux anonymes.

On a tous débuté un jour et votre question ne semble pas être si simple et
si courante.
--
Paul Bacelar


"Jean-Michel" news:
Bonjour Paul,

Merci pour votre aide, mais je voudrais juste préciser un point, en local
mon appli fonctionne correctement, est-ce alors possible dans ce cas que


ce
soit un problème de connexion ?

Quand vous parlez de connexion, vous pensez bien à la connexion à la base


de
données ?

Je ne suis plus tout à fait débutant, mais encore trop peu expérimenté,
mes questions vous paraîtront peut-être simplettes !

En tout cas merci pour votre temps,

Jean-Michel


"Paul Bacelar" a écrit :

> Vous avez un problème sur la méthode "Open" de votre connection.


Vérifiez
> votre chaîne de connexion.
> --
> Paul Bacelar
>
> "Jean-Michel" > news:
> > Bonjour,
> >
> > Mon système est un xp pro, j'utilise IIS comme serveur web.
> >
> > J'ai écrit avec VB.Net en asp : un service Web asp qui propose une


méthode
> > d'envoi de données et une méthode de mise à jour de données. le


service
> web
> > fait appel à une base de données access.
> >
> > D'autre part , j'ai écrit une application client web asp qui fait


appel à
> > mon service web pour l'affichage et la mise à jour des données.
> >
> > Je n'arrive pas à exécuter mes pages web clients depuis internet j'ai


le
> > message suivant (je vous accorde que ce n'est pas très lisible, j'ai


fait
> un
> > copier-coller).
> >
> > Si quelqu'un a assez d'éléments pour me guider dans la voie à suivre,


je
> ne
> > pense pas que ce soit un problème de sécurité parce que quand j'enlève


de
> mes
> > pages asp l'accès aux données je peux accéder à mes pages depuis


internet.
> >
> > Voici le message d'erreur qui s'affiche sur le poste client.
> >
> > D'avance, merci pour votre aide,
> >
> > Jean-Michel
> >
> > Détails de l'exception: System.Web.Services.Protocols.SoapException:
> > System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu


traiter
> la
> > demande. ---> System.Data.OleDb.OleDbException: Erreur non spécifiée


at
> > System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> > System.Data.OleDb.OleDbConnection.InitializeProvider() at
> > System.Data.OleDb.OleDbConnection.Open() at
> > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
> > ConnectionState& originalState) at
> > System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
> > startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> > CommandBehavior behavior) at


System.Data.Common.DbDataAdapter.Fill(DataSet
> > dataSet, Int32 startRecord, Int32 maxRecords, String srcTable,


IDbCommand
> > command, CommandBehavior behavior) at
> > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> > CoureurWebService.CoureurService.GetCoureur() --- Fin de la trace de


la
> pile
> > d'exception interne ---
> >
> > Erreur source:
> >
> > Une exception non gérée s'est produite lors de l'exécution de la


demande
> Web
> > actuelle. Les informations relatives à l'origine et l'emplacement de
> > l'exception peuvent être identifiées en utilisant la trace de la pile
> > d'exception ci-dessous.
> >
> > Trace de la pile:
> >
> >
> > [SoapException: System.Web.Services.Protocols.SoapException: Le


serveur
> n'a
> > pas pu traiter la demande. ---> System.Data.OleDb.OleDbException:


Erreur
> non
> > spécifiée
> > at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
> > at System.Data.OleDb.OleDbConnection.InitializeProvider()
> > at System.Data.OleDb.OleDbConnection.Open()
> > at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection


connection,
> > ConnectionState& originalState)
> > at System.Data.Common.DbDataAdapter.FillFromCommand(Object data,


Int32
> > startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> > CommandBehavior behavior)
> > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32
> > startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> > CommandBehavior behavior)
> > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> > at CoureurWebService.CoureurService.GetCoureur()
> > --- Fin de la trace de la pile d'exception interne ---]
> >
> >
>


System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> Message message, WebResponse response, Stream responseStream, Boolean
> asyncCall)
> > System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > methodName, Object[] parameters)
> > CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > CoureurWebClient.WebForm1.Page_Load(Object sender, EventArgs e) +73
> > System.Web.UI.Control.OnLoad(EventArgs e)
> > System.Web.UI.Control.LoadRecursive()
> > System.Web.UI.Page.ProcessRequestMain()
> >
> >
> >
> > --
> > Jean-Michel
> >
> >
> >
> >
> >
> >
>
>
>


Jean-Michel
Le #12065391
Bonsoir Paul,

Merci pour votre gentillesse, votre aide me permet de progresser, le
Développement ASP est vraiment très intéressant, relativement complexe,
heureusement qu'il y a des gens comme vous pour aider les débutants.

Pour répondre à vos remarques :
Oui, j'ai bien mentionné au niveau des deux web config (1 Web.config pour
mon projet web service et un web.config pour mon projet web asp) la mention
<identity impersonate="true"/>
J'ai également interdit les connexions anonymes sur mes 2 projets, j'ai
réalisé cette opération par l'intermédiaire de IIS (click droit sur le projet
puis sécu du répertoire, etc...).
Vous me parlez d'interdire l'accès des pages aux anonymes, est-ce par
l'intermédiaire du web.config avec les instructions du type
<allow users="?" />

Bonne Journée à vous,

Jean-Michel

"Paul Bacelar" a écrit :

Oui, c'est bien la connexion à la BDD.

La callstack que vous nous avez donnée semble sans ambiguïté. C'est dans la
méthode Open qui est appelé en interne par Fill d'un DbDataAdapter que le
problème ce produit.

Il ce peut que cela soit la commande du Fill qui n'est pas bonne puisque la
connexion est ouvert sur cette méthode.

Le plus probable semble un problème de sécurité.

Vérifiez votre impersonnalisation de l'application ASP.NET (dans le
web.config) et l'accès aux pages interdites aux anonymes.

On a tous débuté un jour et votre question ne semble pas être si simple et
si courante.
--
Paul Bacelar


"Jean-Michel" news:
> Bonjour Paul,
>
> Merci pour votre aide, mais je voudrais juste préciser un point, en local
> mon appli fonctionne correctement, est-ce alors possible dans ce cas que
ce
> soit un problème de connexion ?
>
> Quand vous parlez de connexion, vous pensez bien à la connexion à la base
de
> données ?
>
> Je ne suis plus tout à fait débutant, mais encore trop peu expérimenté,
> mes questions vous paraîtront peut-être simplettes !
>
> En tout cas merci pour votre temps,
>
> Jean-Michel
>
>
> "Paul Bacelar" a écrit :
>
> > Vous avez un problème sur la méthode "Open" de votre connection.
Vérifiez
> > votre chaîne de connexion.
> > --
> > Paul Bacelar
> >
> > "Jean-Michel" > > news:
> > > Bonjour,
> > >
> > > Mon système est un xp pro, j'utilise IIS comme serveur web.
> > >
> > > J'ai écrit avec VB.Net en asp : un service Web asp qui propose une
méthode
> > > d'envoi de données et une méthode de mise à jour de données. le
service
> > web
> > > fait appel à une base de données access.
> > >
> > > D'autre part , j'ai écrit une application client web asp qui fait
appel à
> > > mon service web pour l'affichage et la mise à jour des données.
> > >
> > > Je n'arrive pas à exécuter mes pages web clients depuis internet j'ai
le
> > > message suivant (je vous accorde que ce n'est pas très lisible, j'ai
fait
> > un
> > > copier-coller).
> > >
> > > Si quelqu'un a assez d'éléments pour me guider dans la voie à suivre,
je
> > ne
> > > pense pas que ce soit un problème de sécurité parce que quand j'enlève
de
> > mes
> > > pages asp l'accès aux données je peux accéder à mes pages depuis
internet.
> > >
> > > Voici le message d'erreur qui s'affiche sur le poste client.
> > >
> > > D'avance, merci pour votre aide,
> > >
> > > Jean-Michel
> > >
> > > Détails de l'exception: System.Web.Services.Protocols.SoapException:
> > > System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu
traiter
> > la
> > > demande. ---> System.Data.OleDb.OleDbException: Erreur non spécifiée
at
> > > System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> > > System.Data.OleDb.OleDbConnection.InitializeProvider() at
> > > System.Data.OleDb.OleDbConnection.Open() at
> > > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
> > > ConnectionState& originalState) at
> > > System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32
> > > startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> > > CommandBehavior behavior) at
System.Data.Common.DbDataAdapter.Fill(DataSet
> > > dataSet, Int32 startRecord, Int32 maxRecords, String srcTable,
IDbCommand
> > > command, CommandBehavior behavior) at
> > > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> > > CoureurWebService.CoureurService.GetCoureur() --- Fin de la trace de
la
> > pile
> > > d'exception interne ---
> > >
> > > Erreur source:
> > >
> > > Une exception non gérée s'est produite lors de l'exécution de la
demande
> > Web
> > > actuelle. Les informations relatives à l'origine et l'emplacement de
> > > l'exception peuvent être identifiées en utilisant la trace de la pile
> > > d'exception ci-dessous.
> > >
> > > Trace de la pile:
> > >
> > >
> > > [SoapException: System.Web.Services.Protocols.SoapException: Le
serveur
> > n'a
> > > pas pu traiter la demande. ---> System.Data.OleDb.OleDbException:
Erreur
> > non
> > > spécifiée
> > > at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
> > > at System.Data.OleDb.OleDbConnection.InitializeProvider()
> > > at System.Data.OleDb.OleDbConnection.Open()
> > > at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
connection,
> > > ConnectionState& originalState)
> > > at System.Data.Common.DbDataAdapter.FillFromCommand(Object data,
Int32
> > > startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> > > CommandBehavior behavior)
> > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32
> > > startRecord, Int32 maxRecords, String srcTable, IDbCommand command,
> > > CommandBehavior behavior)
> > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> > > at CoureurWebService.CoureurService.GetCoureur()
> > > --- Fin de la trace de la pile d'exception interne ---]
> > >
> > >
> >
System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> > Message message, WebResponse response, Stream responseStream, Boolean
> > asyncCall)
> > > System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > > methodName, Object[] parameters)
> > > CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > > CoureurWebClient.WebForm1.Page_Load(Object sender, EventArgs e) +73
> > > System.Web.UI.Control.OnLoad(EventArgs e)
> > > System.Web.UI.Control.LoadRecursive()
> > > System.Web.UI.Page.ProcessRequestMain()
> > >
> > >
> > >
> > > --
> > > Jean-Michel
> > >
> > >
> > >
> > >
> > >
> > >
> >
> >
> >





Paul Bacelar
Le #12065371
Avec votre manipulation dans IIS vous interdisez l'accès aux personnes non
identifiés aux pages web de votre application.

C'est très bien, mais voila, il y toujours un petit hic ;-).

IIS n'autorise que les personnes identifiées à se connecter mais comme c'est
une application ASP.NET, IIS transfert à la page de login de l'application
la charge d'authentifier l'utilisateur puisque les personnes anonymes sont
interdites et que l'on peut customiser la mécanique d'authentification avec
ASP.NET.

Si dans votre web.config, vous avez <allow users="?" /> au lieu de <deny
users="?" />, vous autorisez toutes les personnes non authentifiées à se
connecter et ASP.NET dit à IIS que c'est OK pour le nouveau venu avec un
cookie de session et tout le toutim.

Vous avez donc une personne inconnue qui accède à vos pages. Si la personne
est inconnue le "<identity impersonate="true"/>" doit laisser le thread ASP
sur son compte par défaut qui est fonction de la version d'IIS (ASPNET pour
IIS5, me rappel plus pour IIS6)
Ces comptes sont locaux à la machine contenant IIS et lors de la connexion à
SQLServer, la sécurité intégré window doit vous rejeter.

Donc essayer "<deny users="?" />" pour savoir si le problème n'est pas juste
un problème de sécurité.
--
Paul Bacelar


"Jean-Michel" news:
Bonsoir Paul,

Merci pour votre gentillesse, votre aide me permet de progresser, le
Développement ASP est vraiment très intéressant, relativement complexe,
heureusement qu'il y a des gens comme vous pour aider les débutants.

Pour répondre à vos remarques :
Oui, j'ai bien mentionné au niveau des deux web config (1 Web.config pour
mon projet web service et un web.config pour mon projet web asp) la


mention
<identity impersonate="true"/>
J'ai également interdit les connexions anonymes sur mes 2 projets, j'ai
réalisé cette opération par l'intermédiaire de IIS (click droit sur le


projet
puis sécu du répertoire, etc...).
Vous me parlez d'interdire l'accès des pages aux anonymes, est-ce par
l'intermédiaire du web.config avec les instructions du type
<allow users="?" />

Bonne Journée à vous,

Jean-Michel

"Paul Bacelar" a écrit :

> Oui, c'est bien la connexion à la BDD.
>
> La callstack que vous nous avez donnée semble sans ambiguïté. C'est dans


la
> méthode Open qui est appelé en interne par Fill d'un DbDataAdapter que


le
> problème ce produit.
>
> Il ce peut que cela soit la commande du Fill qui n'est pas bonne puisque


la
> connexion est ouvert sur cette méthode.
>
> Le plus probable semble un problème de sécurité.
>
> Vérifiez votre impersonnalisation de l'application ASP.NET (dans le
> web.config) et l'accès aux pages interdites aux anonymes.
>
> On a tous débuté un jour et votre question ne semble pas être si simple


et
> si courante.
> --
> Paul Bacelar
>
>
> "Jean-Michel" > news:
> > Bonjour Paul,
> >
> > Merci pour votre aide, mais je voudrais juste préciser un point, en


local
> > mon appli fonctionne correctement, est-ce alors possible dans ce cas


que
> ce
> > soit un problème de connexion ?
> >
> > Quand vous parlez de connexion, vous pensez bien à la connexion à la


base
> de
> > données ?
> >
> > Je ne suis plus tout à fait débutant, mais encore trop peu


expérimenté,
> > mes questions vous paraîtront peut-être simplettes !
> >
> > En tout cas merci pour votre temps,
> >
> > Jean-Michel
> >
> >
> > "Paul Bacelar" a écrit :
> >
> > > Vous avez un problème sur la méthode "Open" de votre connection.
> Vérifiez
> > > votre chaîne de connexion.
> > > --
> > > Paul Bacelar
> > >
> > > "Jean-Michel"

message
> > > news:
> > > > Bonjour,
> > > >
> > > > Mon système est un xp pro, j'utilise IIS comme serveur web.
> > > >
> > > > J'ai écrit avec VB.Net en asp : un service Web asp qui propose une
> méthode
> > > > d'envoi de données et une méthode de mise à jour de données. le
> service
> > > web
> > > > fait appel à une base de données access.
> > > >
> > > > D'autre part , j'ai écrit une application client web asp qui fait
> appel à
> > > > mon service web pour l'affichage et la mise à jour des données.
> > > >
> > > > Je n'arrive pas à exécuter mes pages web clients depuis internet


j'ai
> le
> > > > message suivant (je vous accorde que ce n'est pas très lisible,


j'ai
> fait
> > > un
> > > > copier-coller).
> > > >
> > > > Si quelqu'un a assez d'éléments pour me guider dans la voie à


suivre,
> je
> > > ne
> > > > pense pas que ce soit un problème de sécurité parce que quand


j'enlève
> de
> > > mes
> > > > pages asp l'accès aux données je peux accéder à mes pages depuis
> internet.
> > > >
> > > > Voici le message d'erreur qui s'affiche sur le poste client.
> > > >
> > > > D'avance, merci pour votre aide,
> > > >
> > > > Jean-Michel
> > > >
> > > > Détails de l'exception:


System.Web.Services.Protocols.SoapException:
> > > > System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu
> traiter
> > > la
> > > > demande. ---> System.Data.OleDb.OleDbException: Erreur non


spécifiée
> at
> > > > System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> > > > System.Data.OleDb.OleDbConnection.InitializeProvider() at
> > > > System.Data.OleDb.OleDbConnection.Open() at
> > > > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection


connection,
> > > > ConnectionState& originalState) at
> > > > System.Data.Common.DbDataAdapter.FillFromCommand(Object data,


Int32
> > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand


command,
> > > > CommandBehavior behavior) at
> System.Data.Common.DbDataAdapter.Fill(DataSet
> > > > dataSet, Int32 startRecord, Int32 maxRecords, String srcTable,
> IDbCommand
> > > > command, CommandBehavior behavior) at
> > > > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> > > > CoureurWebService.CoureurService.GetCoureur() --- Fin de la trace


de
> la
> > > pile
> > > > d'exception interne ---
> > > >
> > > > Erreur source:
> > > >
> > > > Une exception non gérée s'est produite lors de l'exécution de la
> demande
> > > Web
> > > > actuelle. Les informations relatives à l'origine et l'emplacement


de
> > > > l'exception peuvent être identifiées en utilisant la trace de la


pile
> > > > d'exception ci-dessous.
> > > >
> > > > Trace de la pile:
> > > >
> > > >
> > > > [SoapException: System.Web.Services.Protocols.SoapException: Le
> serveur
> > > n'a
> > > > pas pu traiter la demande. ---> System.Data.OleDb.OleDbException:
> Erreur
> > > non
> > > > spécifiée
> > > > at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
> > > > at System.Data.OleDb.OleDbConnection.InitializeProvider()
> > > > at System.Data.OleDb.OleDbConnection.Open()
> > > > at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> connection,
> > > > ConnectionState& originalState)
> > > > at System.Data.Common.DbDataAdapter.FillFromCommand(Object


data,
> Int32
> > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand


command,
> > > > CommandBehavior behavior)
> > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32
> > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand


command,
> > > > CommandBehavior behavior)
> > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> > > > at CoureurWebService.CoureurService.GetCoureur()
> > > > --- Fin de la trace de la pile d'exception interne ---]
> > > >
> > > >
> > >
>


System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> > > Message message, WebResponse response, Stream responseStream,


Boolean
> > > asyncCall)
> > > >


System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > > > methodName, Object[] parameters)
> > > > CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > > > CoureurWebClient.WebForm1.Page_Load(Object sender, EventArgs e)


+73
> > > > System.Web.UI.Control.OnLoad(EventArgs e)
> > > > System.Web.UI.Control.LoadRecursive()
> > > > System.Web.UI.Page.ProcessRequestMain()
> > > >
> > > >
> > > >
> > > > --
> > > > Jean-Michel
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> > >
>
>
>


Jean-Michel
Le #12065091
Bonjour Paul,

J'ai suivi vos conseils, mais malheureusement dans mon cas, ça n'a pas
résolu le problème, j'ai toutefois trouvé dans mon code la ligne qui pose
problème, dans mon Form Load j'alimente mon Datagrid avec les données de la
base, et c'est la ligne Me.DataGrid1.DataBind() qui déclenche l'eereur, voici
l'ensemble de mon code sur Page Load.

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Placez ici le code utilisateur pour initialiser la page
Dim ws As New CoureurWebClient.localhost.CoureurService
ws.Credentials = System.Net.CredentialCache.DefaultCredentials
CoureurData.Merge(ws.GetCoureur())
If Not Page.IsPostBack Then
Me.DataGrid1.DataBind()
End If
End Sub

Si par expérience, vous voyez ou est le problème, Merci d'avance

Jean-Michel

Passez une bonne journée.

"Paul Bacelar" a écrit :

Avec votre manipulation dans IIS vous interdisez l'accès aux personnes non
identifiés aux pages web de votre application.

C'est très bien, mais voila, il y toujours un petit hic ;-).

IIS n'autorise que les personnes identifiées à se connecter mais comme c'est
une application ASP.NET, IIS transfert à la page de login de l'application
la charge d'authentifier l'utilisateur puisque les personnes anonymes sont
interdites et que l'on peut customiser la mécanique d'authentification avec
ASP.NET.

Si dans votre web.config, vous avez <allow users="?" /> au lieu de <deny
users="?" />, vous autorisez toutes les personnes non authentifiées à se
connecter et ASP.NET dit à IIS que c'est OK pour le nouveau venu avec un
cookie de session et tout le toutim.

Vous avez donc une personne inconnue qui accède à vos pages. Si la personne
est inconnue le "<identity impersonate="true"/>" doit laisser le thread ASP
sur son compte par défaut qui est fonction de la version d'IIS (ASPNET pour
IIS5, me rappel plus pour IIS6)
Ces comptes sont locaux à la machine contenant IIS et lors de la connexion à
SQLServer, la sécurité intégré window doit vous rejeter.

Donc essayer "<deny users="?" />" pour savoir si le problème n'est pas juste
un problème de sécurité.
--
Paul Bacelar


"Jean-Michel" news:
> Bonsoir Paul,
>
> Merci pour votre gentillesse, votre aide me permet de progresser, le
> Développement ASP est vraiment très intéressant, relativement complexe,
> heureusement qu'il y a des gens comme vous pour aider les débutants.
>
> Pour répondre à vos remarques :
> Oui, j'ai bien mentionné au niveau des deux web config (1 Web.config pour
> mon projet web service et un web.config pour mon projet web asp) la
mention
> <identity impersonate="true"/>
> J'ai également interdit les connexions anonymes sur mes 2 projets, j'ai
> réalisé cette opération par l'intermédiaire de IIS (click droit sur le
projet
> puis sécu du répertoire, etc...).
> Vous me parlez d'interdire l'accès des pages aux anonymes, est-ce par
> l'intermédiaire du web.config avec les instructions du type
> <allow users="?" />
>
> Bonne Journée à vous,
>
> Jean-Michel
>
> "Paul Bacelar" a écrit :
>
> > Oui, c'est bien la connexion à la BDD.
> >
> > La callstack que vous nous avez donnée semble sans ambiguïté. C'est dans
la
> > méthode Open qui est appelé en interne par Fill d'un DbDataAdapter que
le
> > problème ce produit.
> >
> > Il ce peut que cela soit la commande du Fill qui n'est pas bonne puisque
la
> > connexion est ouvert sur cette méthode.
> >
> > Le plus probable semble un problème de sécurité.
> >
> > Vérifiez votre impersonnalisation de l'application ASP.NET (dans le
> > web.config) et l'accès aux pages interdites aux anonymes.
> >
> > On a tous débuté un jour et votre question ne semble pas être si simple
et
> > si courante.
> > --
> > Paul Bacelar
> >
> >
> > "Jean-Michel" > > news:
> > > Bonjour Paul,
> > >
> > > Merci pour votre aide, mais je voudrais juste préciser un point, en
local
> > > mon appli fonctionne correctement, est-ce alors possible dans ce cas
que
> > ce
> > > soit un problème de connexion ?
> > >
> > > Quand vous parlez de connexion, vous pensez bien à la connexion à la
base
> > de
> > > données ?
> > >
> > > Je ne suis plus tout à fait débutant, mais encore trop peu
expérimenté,
> > > mes questions vous paraîtront peut-être simplettes !
> > >
> > > En tout cas merci pour votre temps,
> > >
> > > Jean-Michel
> > >
> > >
> > > "Paul Bacelar" a écrit :
> > >
> > > > Vous avez un problème sur la méthode "Open" de votre connection.
> > Vérifiez
> > > > votre chaîne de connexion.
> > > > --
> > > > Paul Bacelar
> > > >
> > > > "Jean-Michel" message
> > > > news:
> > > > > Bonjour,
> > > > >
> > > > > Mon système est un xp pro, j'utilise IIS comme serveur web.
> > > > >
> > > > > J'ai écrit avec VB.Net en asp : un service Web asp qui propose une
> > méthode
> > > > > d'envoi de données et une méthode de mise à jour de données. le
> > service
> > > > web
> > > > > fait appel à une base de données access.
> > > > >
> > > > > D'autre part , j'ai écrit une application client web asp qui fait
> > appel à
> > > > > mon service web pour l'affichage et la mise à jour des données.
> > > > >
> > > > > Je n'arrive pas à exécuter mes pages web clients depuis internet
j'ai
> > le
> > > > > message suivant (je vous accorde que ce n'est pas très lisible,
j'ai
> > fait
> > > > un
> > > > > copier-coller).
> > > > >
> > > > > Si quelqu'un a assez d'éléments pour me guider dans la voie à
suivre,
> > je
> > > > ne
> > > > > pense pas que ce soit un problème de sécurité parce que quand
j'enlève
> > de
> > > > mes
> > > > > pages asp l'accès aux données je peux accéder à mes pages depuis
> > internet.
> > > > >
> > > > > Voici le message d'erreur qui s'affiche sur le poste client.
> > > > >
> > > > > D'avance, merci pour votre aide,
> > > > >
> > > > > Jean-Michel
> > > > >
> > > > > Détails de l'exception:
System.Web.Services.Protocols.SoapException:
> > > > > System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu
> > traiter
> > > > la
> > > > > demande. ---> System.Data.OleDb.OleDbException: Erreur non
spécifiée
> > at
> > > > > System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> > > > > System.Data.OleDb.OleDbConnection.InitializeProvider() at
> > > > > System.Data.OleDb.OleDbConnection.Open() at
> > > > > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
connection,
> > > > > ConnectionState& originalState) at
> > > > > System.Data.Common.DbDataAdapter.FillFromCommand(Object data,
Int32
> > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
command,
> > > > > CommandBehavior behavior) at
> > System.Data.Common.DbDataAdapter.Fill(DataSet
> > > > > dataSet, Int32 startRecord, Int32 maxRecords, String srcTable,
> > IDbCommand
> > > > > command, CommandBehavior behavior) at
> > > > > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> > > > > CoureurWebService.CoureurService.GetCoureur() --- Fin de la trace
de
> > la
> > > > pile
> > > > > d'exception interne ---
> > > > >
> > > > > Erreur source:
> > > > >
> > > > > Une exception non gérée s'est produite lors de l'exécution de la
> > demande
> > > > Web
> > > > > actuelle. Les informations relatives à l'origine et l'emplacement
de
> > > > > l'exception peuvent être identifiées en utilisant la trace de la
pile
> > > > > d'exception ci-dessous.
> > > > >
> > > > > Trace de la pile:
> > > > >
> > > > >
> > > > > [SoapException: System.Web.Services.Protocols.SoapException: Le
> > serveur
> > > > n'a
> > > > > pas pu traiter la demande. ---> System.Data.OleDb.OleDbException:
> > Erreur
> > > > non
> > > > > spécifiée
> > > > > at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
> > > > > at System.Data.OleDb.OleDbConnection.InitializeProvider()
> > > > > at System.Data.OleDb.OleDbConnection.Open()
> > > > > at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > connection,
> > > > > ConnectionState& originalState)
> > > > > at System.Data.Common.DbDataAdapter.FillFromCommand(Object
data,
> > Int32
> > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
command,
> > > > > CommandBehavior behavior)
> > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32
> > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
command,
> > > > > CommandBehavior behavior)
> > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> > > > > at CoureurWebService.CoureurService.GetCoureur()
> > > > > --- Fin de la trace de la pile d'exception interne ---]
> > > > >
> > > > >
> > > >
> >
System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> > > > Message message, WebResponse response, Stream responseStream,
Boolean
> > > > asyncCall)
> > > > >
System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > > > > methodName, Object[] parameters)
> > > > > CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > > > > CoureurWebClient.WebForm1.Page_Load(Object sender, EventArgs e)
+73
> > > > > System.Web.UI.Control.OnLoad(EventArgs e)
> > > > > System.Web.UI.Control.LoadRecursive()
> > > > > System.Web.UI.Page.ProcessRequestMain()
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Jean-Michel
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> >
> >
> >





Paul Bacelar
Le #12065081
La trace montre une erreur dans GetCoureur, pas dans DataBind.
--
Paul Bacelar

"Jean-Michel" news:
Bonjour Paul,

J'ai suivi vos conseils, mais malheureusement dans mon cas, ça n'a pas
résolu le problème, j'ai toutefois trouvé dans mon code la ligne qui pose
problème, dans mon Form Load j'alimente mon Datagrid avec les données de


la
base, et c'est la ligne Me.DataGrid1.DataBind() qui déclenche l'eereur,


voici
l'ensemble de mon code sur Page Load.

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Placez ici le code utilisateur pour initialiser la page
Dim ws As New CoureurWebClient.localhost.CoureurService
ws.Credentials = System.Net.CredentialCache.DefaultCredentials
CoureurData.Merge(ws.GetCoureur())
If Not Page.IsPostBack Then
Me.DataGrid1.DataBind()
End If
End Sub

Si par expérience, vous voyez ou est le problème, Merci d'avance

Jean-Michel

Passez une bonne journée.

"Paul Bacelar" a écrit :

> Avec votre manipulation dans IIS vous interdisez l'accès aux personnes


non
> identifiés aux pages web de votre application.
>
> C'est très bien, mais voila, il y toujours un petit hic ;-).
>
> IIS n'autorise que les personnes identifiées à se connecter mais comme


c'est
> une application ASP.NET, IIS transfert à la page de login de


l'application
> la charge d'authentifier l'utilisateur puisque les personnes anonymes


sont
> interdites et que l'on peut customiser la mécanique d'authentification


avec
> ASP.NET.
>
> Si dans votre web.config, vous avez <allow users="?" /> au lieu de <deny
> users="?" />, vous autorisez toutes les personnes non authentifiées à se
> connecter et ASP.NET dit à IIS que c'est OK pour le nouveau venu avec un
> cookie de session et tout le toutim.
>
> Vous avez donc une personne inconnue qui accède à vos pages. Si la


personne
> est inconnue le "<identity impersonate="true"/>" doit laisser le thread


ASP
> sur son compte par défaut qui est fonction de la version d'IIS (ASPNET


pour
> IIS5, me rappel plus pour IIS6)
> Ces comptes sont locaux à la machine contenant IIS et lors de la


connexion à
> SQLServer, la sécurité intégré window doit vous rejeter.
>
> Donc essayer "<deny users="?" />" pour savoir si le problème n'est pas


juste
> un problème de sécurité.
> --
> Paul Bacelar
>
>
> "Jean-Michel" > news:
> > Bonsoir Paul,
> >
> > Merci pour votre gentillesse, votre aide me permet de progresser, le
> > Développement ASP est vraiment très intéressant, relativement


complexe,
> > heureusement qu'il y a des gens comme vous pour aider les débutants.
> >
> > Pour répondre à vos remarques :
> > Oui, j'ai bien mentionné au niveau des deux web config (1 Web.config


pour
> > mon projet web service et un web.config pour mon projet web asp) la
> mention
> > <identity impersonate="true"/>
> > J'ai également interdit les connexions anonymes sur mes 2 projets,


j'ai
> > réalisé cette opération par l'intermédiaire de IIS (click droit sur le
> projet
> > puis sécu du répertoire, etc...).
> > Vous me parlez d'interdire l'accès des pages aux anonymes, est-ce par
> > l'intermédiaire du web.config avec les instructions du type
> > <allow users="?" />
> >
> > Bonne Journée à vous,
> >
> > Jean-Michel
> >
> > "Paul Bacelar" a écrit :
> >
> > > Oui, c'est bien la connexion à la BDD.
> > >
> > > La callstack que vous nous avez donnée semble sans ambiguïté. C'est


dans
> la
> > > méthode Open qui est appelé en interne par Fill d'un DbDataAdapter


que
> le
> > > problème ce produit.
> > >
> > > Il ce peut que cela soit la commande du Fill qui n'est pas bonne


puisque
> la
> > > connexion est ouvert sur cette méthode.
> > >
> > > Le plus probable semble un problème de sécurité.
> > >
> > > Vérifiez votre impersonnalisation de l'application ASP.NET (dans le
> > > web.config) et l'accès aux pages interdites aux anonymes.
> > >
> > > On a tous débuté un jour et votre question ne semble pas être si


simple
> et
> > > si courante.
> > > --
> > > Paul Bacelar
> > >
> > >
> > > "Jean-Michel"

message
> > > news:
> > > > Bonjour Paul,
> > > >
> > > > Merci pour votre aide, mais je voudrais juste préciser un point,


en
> local
> > > > mon appli fonctionne correctement, est-ce alors possible dans ce


cas
> que
> > > ce
> > > > soit un problème de connexion ?
> > > >
> > > > Quand vous parlez de connexion, vous pensez bien à la connexion à


la
> base
> > > de
> > > > données ?
> > > >
> > > > Je ne suis plus tout à fait débutant, mais encore trop peu
> expérimenté,
> > > > mes questions vous paraîtront peut-être simplettes !
> > > >
> > > > En tout cas merci pour votre temps,
> > > >
> > > > Jean-Michel
> > > >
> > > >
> > > > "Paul Bacelar" a écrit :
> > > >
> > > > > Vous avez un problème sur la méthode "Open" de votre connection.
> > > Vérifiez
> > > > > votre chaîne de connexion.
> > > > > --
> > > > > Paul Bacelar
> > > > >
> > > > > "Jean-Michel" > message
> > > > > news:
> > > > > > Bonjour,
> > > > > >
> > > > > > Mon système est un xp pro, j'utilise IIS comme serveur web.
> > > > > >
> > > > > > J'ai écrit avec VB.Net en asp : un service Web asp qui propose


une
> > > méthode
> > > > > > d'envoi de données et une méthode de mise à jour de données.


le
> > > service
> > > > > web
> > > > > > fait appel à une base de données access.
> > > > > >
> > > > > > D'autre part , j'ai écrit une application client web asp qui


fait
> > > appel à
> > > > > > mon service web pour l'affichage et la mise à jour des


données.
> > > > > >
> > > > > > Je n'arrive pas à exécuter mes pages web clients depuis


internet
> j'ai
> > > le
> > > > > > message suivant (je vous accorde que ce n'est pas très


lisible,
> j'ai
> > > fait
> > > > > un
> > > > > > copier-coller).
> > > > > >
> > > > > > Si quelqu'un a assez d'éléments pour me guider dans la voie à
> suivre,
> > > je
> > > > > ne
> > > > > > pense pas que ce soit un problème de sécurité parce que quand
> j'enlève
> > > de
> > > > > mes
> > > > > > pages asp l'accès aux données je peux accéder à mes pages


depuis
> > > internet.
> > > > > >
> > > > > > Voici le message d'erreur qui s'affiche sur le poste client.
> > > > > >
> > > > > > D'avance, merci pour votre aide,
> > > > > >
> > > > > > Jean-Michel
> > > > > >
> > > > > > Détails de l'exception:
> System.Web.Services.Protocols.SoapException:
> > > > > > System.Web.Services.Protocols.SoapException: Le serveur n'a


pas pu
> > > traiter
> > > > > la
> > > > > > demande. ---> System.Data.OleDb.OleDbException: Erreur non
> spécifiée
> > > at
> > > > > > System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> > > > > > System.Data.OleDb.OleDbConnection.InitializeProvider() at
> > > > > > System.Data.OleDb.OleDbConnection.Open() at
> > > > > > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> connection,
> > > > > > ConnectionState& originalState) at
> > > > > > System.Data.Common.DbDataAdapter.FillFromCommand(Object data,
> Int32
> > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> command,
> > > > > > CommandBehavior behavior) at
> > > System.Data.Common.DbDataAdapter.Fill(DataSet
> > > > > > dataSet, Int32 startRecord, Int32 maxRecords, String srcTable,
> > > IDbCommand
> > > > > > command, CommandBehavior behavior) at
> > > > > > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> > > > > > CoureurWebService.CoureurService.GetCoureur() --- Fin de la


trace
> de
> > > la
> > > > > pile
> > > > > > d'exception interne ---
> > > > > >
> > > > > > Erreur source:
> > > > > >
> > > > > > Une exception non gérée s'est produite lors de l'exécution de


la
> > > demande
> > > > > Web
> > > > > > actuelle. Les informations relatives à l'origine et


l'emplacement
> de
> > > > > > l'exception peuvent être identifiées en utilisant la trace de


la
> pile
> > > > > > d'exception ci-dessous.
> > > > > >
> > > > > > Trace de la pile:
> > > > > >
> > > > > >
> > > > > > [SoapException: System.Web.Services.Protocols.SoapException:


Le
> > > serveur
> > > > > n'a
> > > > > > pas pu traiter la demande. --->


System.Data.OleDb.OleDbException:
> > > Erreur
> > > > > non
> > > > > > spécifiée
> > > > > > at System.Data.OleDb.OleDbConnection.ProcessResults(Int32


hr)
> > > > > > at System.Data.OleDb.OleDbConnection.InitializeProvider()
> > > > > > at System.Data.OleDb.OleDbConnection.Open()
> > > > > > at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > > connection,
> > > > > > ConnectionState& originalState)
> > > > > > at System.Data.Common.DbDataAdapter.FillFromCommand(Object
> data,
> > > Int32
> > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> command,
> > > > > > CommandBehavior behavior)
> > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet,


Int32
> > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> command,
> > > > > > CommandBehavior behavior)
> > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> > > > > > at CoureurWebService.CoureurService.GetCoureur()
> > > > > > --- Fin de la trace de la pile d'exception interne ---]
> > > > > >
> > > > > >
> > > > >
> > >
>


System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> > > > > Message message, WebResponse response, Stream responseStream,
> Boolean
> > > > > asyncCall)
> > > > > >
> System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > > > > > methodName, Object[] parameters)
> > > > > > CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > > > > > CoureurWebClient.WebForm1.Page_Load(Object sender,


EventArgs e)
> +73
> > > > > > System.Web.UI.Control.OnLoad(EventArgs e)
> > > > > > System.Web.UI.Control.LoadRecursive()
> > > > > > System.Web.UI.Page.ProcessRequestMain()
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Jean-Michel
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > >
> > >
> > >
>
>
>


Jean-Michel
Le #12058891
Bonjour Paul,

Je suis toujours en train de chercher, mais je ne trouve pas, il y a peut
être une histoire de credentials, par contre je n'ai pas beaucoup d'infos sur
les credentials, je vais essayer de trouver de l'info là-dessus.

Jean-Michel

"Paul Bacelar" a écrit :

La trace montre une erreur dans GetCoureur, pas dans DataBind.
--
Paul Bacelar

"Jean-Michel" news:
> Bonjour Paul,
>
> J'ai suivi vos conseils, mais malheureusement dans mon cas, ça n'a pas
> résolu le problème, j'ai toutefois trouvé dans mon code la ligne qui pose
> problème, dans mon Form Load j'alimente mon Datagrid avec les données de
la
> base, et c'est la ligne Me.DataGrid1.DataBind() qui déclenche l'eereur,
voici
> l'ensemble de mon code sur Page Load.
>
> Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
> System.EventArgs) Handles MyBase.Load
> 'Placez ici le code utilisateur pour initialiser la page
> Dim ws As New CoureurWebClient.localhost.CoureurService
> ws.Credentials = System.Net.CredentialCache.DefaultCredentials
> CoureurData.Merge(ws.GetCoureur())
> If Not Page.IsPostBack Then
> Me.DataGrid1.DataBind()
> End If
> End Sub
>
> Si par expérience, vous voyez ou est le problème, Merci d'avance
>
> Jean-Michel
>
> Passez une bonne journée.
>
> "Paul Bacelar" a écrit :
>
> > Avec votre manipulation dans IIS vous interdisez l'accès aux personnes
non
> > identifiés aux pages web de votre application.
> >
> > C'est très bien, mais voila, il y toujours un petit hic ;-).
> >
> > IIS n'autorise que les personnes identifiées à se connecter mais comme
c'est
> > une application ASP.NET, IIS transfert à la page de login de
l'application
> > la charge d'authentifier l'utilisateur puisque les personnes anonymes
sont
> > interdites et que l'on peut customiser la mécanique d'authentification
avec
> > ASP.NET.
> >
> > Si dans votre web.config, vous avez <allow users="?" /> au lieu de <deny
> > users="?" />, vous autorisez toutes les personnes non authentifiées à se
> > connecter et ASP.NET dit à IIS que c'est OK pour le nouveau venu avec un
> > cookie de session et tout le toutim.
> >
> > Vous avez donc une personne inconnue qui accède à vos pages. Si la
personne
> > est inconnue le "<identity impersonate="true"/>" doit laisser le thread
ASP
> > sur son compte par défaut qui est fonction de la version d'IIS (ASPNET
pour
> > IIS5, me rappel plus pour IIS6)
> > Ces comptes sont locaux à la machine contenant IIS et lors de la
connexion à
> > SQLServer, la sécurité intégré window doit vous rejeter.
> >
> > Donc essayer "<deny users="?" />" pour savoir si le problème n'est pas
juste
> > un problème de sécurité.
> > --
> > Paul Bacelar
> >
> >
> > "Jean-Michel" > > news:
> > > Bonsoir Paul,
> > >
> > > Merci pour votre gentillesse, votre aide me permet de progresser, le
> > > Développement ASP est vraiment très intéressant, relativement
complexe,
> > > heureusement qu'il y a des gens comme vous pour aider les débutants.
> > >
> > > Pour répondre à vos remarques :
> > > Oui, j'ai bien mentionné au niveau des deux web config (1 Web.config
pour
> > > mon projet web service et un web.config pour mon projet web asp) la
> > mention
> > > <identity impersonate="true"/>
> > > J'ai également interdit les connexions anonymes sur mes 2 projets,
j'ai
> > > réalisé cette opération par l'intermédiaire de IIS (click droit sur le
> > projet
> > > puis sécu du répertoire, etc...).
> > > Vous me parlez d'interdire l'accès des pages aux anonymes, est-ce par
> > > l'intermédiaire du web.config avec les instructions du type
> > > <allow users="?" />
> > >
> > > Bonne Journée à vous,
> > >
> > > Jean-Michel
> > >
> > > "Paul Bacelar" a écrit :
> > >
> > > > Oui, c'est bien la connexion à la BDD.
> > > >
> > > > La callstack que vous nous avez donnée semble sans ambiguïté. C'est
dans
> > la
> > > > méthode Open qui est appelé en interne par Fill d'un DbDataAdapter
que
> > le
> > > > problème ce produit.
> > > >
> > > > Il ce peut que cela soit la commande du Fill qui n'est pas bonne
puisque
> > la
> > > > connexion est ouvert sur cette méthode.
> > > >
> > > > Le plus probable semble un problème de sécurité.
> > > >
> > > > Vérifiez votre impersonnalisation de l'application ASP.NET (dans le
> > > > web.config) et l'accès aux pages interdites aux anonymes.
> > > >
> > > > On a tous débuté un jour et votre question ne semble pas être si
simple
> > et
> > > > si courante.
> > > > --
> > > > Paul Bacelar
> > > >
> > > >
> > > > "Jean-Michel" message
> > > > news:
> > > > > Bonjour Paul,
> > > > >
> > > > > Merci pour votre aide, mais je voudrais juste préciser un point,
en
> > local
> > > > > mon appli fonctionne correctement, est-ce alors possible dans ce
cas
> > que
> > > > ce
> > > > > soit un problème de connexion ?
> > > > >
> > > > > Quand vous parlez de connexion, vous pensez bien à la connexion à
la
> > base
> > > > de
> > > > > données ?
> > > > >
> > > > > Je ne suis plus tout à fait débutant, mais encore trop peu
> > expérimenté,
> > > > > mes questions vous paraîtront peut-être simplettes !
> > > > >
> > > > > En tout cas merci pour votre temps,
> > > > >
> > > > > Jean-Michel
> > > > >
> > > > >
> > > > > "Paul Bacelar" a écrit :
> > > > >
> > > > > > Vous avez un problème sur la méthode "Open" de votre connection.
> > > > Vérifiez
> > > > > > votre chaîne de connexion.
> > > > > > --
> > > > > > Paul Bacelar
> > > > > >
> > > > > > "Jean-Michel" > > message
> > > > > > news:
> > > > > > > Bonjour,
> > > > > > >
> > > > > > > Mon système est un xp pro, j'utilise IIS comme serveur web.
> > > > > > >
> > > > > > > J'ai écrit avec VB.Net en asp : un service Web asp qui propose
une
> > > > méthode
> > > > > > > d'envoi de données et une méthode de mise à jour de données.
le
> > > > service
> > > > > > web
> > > > > > > fait appel à une base de données access.
> > > > > > >
> > > > > > > D'autre part , j'ai écrit une application client web asp qui
fait
> > > > appel à
> > > > > > > mon service web pour l'affichage et la mise à jour des
données.
> > > > > > >
> > > > > > > Je n'arrive pas à exécuter mes pages web clients depuis
internet
> > j'ai
> > > > le
> > > > > > > message suivant (je vous accorde que ce n'est pas très
lisible,
> > j'ai
> > > > fait
> > > > > > un
> > > > > > > copier-coller).
> > > > > > >
> > > > > > > Si quelqu'un a assez d'éléments pour me guider dans la voie à
> > suivre,
> > > > je
> > > > > > ne
> > > > > > > pense pas que ce soit un problème de sécurité parce que quand
> > j'enlève
> > > > de
> > > > > > mes
> > > > > > > pages asp l'accès aux données je peux accéder à mes pages
depuis
> > > > internet.
> > > > > > >
> > > > > > > Voici le message d'erreur qui s'affiche sur le poste client.
> > > > > > >
> > > > > > > D'avance, merci pour votre aide,
> > > > > > >
> > > > > > > Jean-Michel
> > > > > > >
> > > > > > > Détails de l'exception:
> > System.Web.Services.Protocols.SoapException:
> > > > > > > System.Web.Services.Protocols.SoapException: Le serveur n'a
pas pu
> > > > traiter
> > > > > > la
> > > > > > > demande. ---> System.Data.OleDb.OleDbException: Erreur non
> > spécifiée
> > > > at
> > > > > > > System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> > > > > > > System.Data.OleDb.OleDbConnection.InitializeProvider() at
> > > > > > > System.Data.OleDb.OleDbConnection.Open() at
> > > > > > > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > connection,
> > > > > > > ConnectionState& originalState) at
> > > > > > > System.Data.Common.DbDataAdapter.FillFromCommand(Object data,
> > Int32
> > > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> > command,
> > > > > > > CommandBehavior behavior) at
> > > > System.Data.Common.DbDataAdapter.Fill(DataSet
> > > > > > > dataSet, Int32 startRecord, Int32 maxRecords, String srcTable,
> > > > IDbCommand
> > > > > > > command, CommandBehavior behavior) at
> > > > > > > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> > > > > > > CoureurWebService.CoureurService.GetCoureur() --- Fin de la
trace
> > de
> > > > la
> > > > > > pile
> > > > > > > d'exception interne ---
> > > > > > >
> > > > > > > Erreur source:
> > > > > > >
> > > > > > > Une exception non gérée s'est produite lors de l'exécution de
la
> > > > demande
> > > > > > Web
> > > > > > > actuelle. Les informations relatives à l'origine et
l'emplacement
> > de
> > > > > > > l'exception peuvent être identifiées en utilisant la trace de
la
> > pile
> > > > > > > d'exception ci-dessous.
> > > > > > >
> > > > > > > Trace de la pile:
> > > > > > >
> > > > > > >
> > > > > > > [SoapException: System.Web.Services.Protocols.SoapException:
Le
> > > > serveur
> > > > > > n'a
> > > > > > > pas pu traiter la demande. --->
System.Data.OleDb.OleDbException:
> > > > Erreur
> > > > > > non
> > > > > > > spécifiée
> > > > > > > at System.Data.OleDb.OleDbConnection.ProcessResults(Int32
hr)
> > > > > > > at System.Data.OleDb.OleDbConnection.InitializeProvider()
> > > > > > > at System.Data.OleDb.OleDbConnection.Open()
> > > > > > > at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > > > connection,
> > > > > > > ConnectionState& originalState)
> > > > > > > at System.Data.Common.DbDataAdapter.FillFromCommand(Object
> > data,
> > > > Int32
> > > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> > command,
> > > > > > > CommandBehavior behavior)
> > > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet,
Int32
> > > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> > command,
> > > > > > > CommandBehavior behavior)
> > > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> > > > > > > at CoureurWebService.CoureurService.GetCoureur()
> > > > > > > --- Fin de la trace de la pile d'exception interne ---]
> > > > > > >
> > > > > > >
> > > > > >
> > > >
> >
System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> > > > > > Message message, WebResponse response, Stream responseStream,
> > Boolean
> > > > > > asyncCall)
> > > > > > >
> > System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > > > > > > methodName, Object[] parameters)
> > > > > > > CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > > > > > > CoureurWebClient.WebForm1.Page_Load(Object sender,
EventArgs e)
> > +73
> > > > > > > System.Web.UI.Control.OnLoad(EventArgs e)
> > > > > > > System.Web.UI.Control.LoadRecursive()
> > > > > > > System.Web.UI.Page.ProcessRequestMain()
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Jean-Michel
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > >
> > > >
> > > >
> >
> >
> >





Jean-Michel
Le #12058731
Bonsoir,
Ca y est ça marche, pour celà j'ai enlevé la ligne <identity
impersonate="true"/>

Merci encore Paul,

"Jean-Michel" a écrit :

Bonjour Paul,

Je suis toujours en train de chercher, mais je ne trouve pas, il y a peut
être une histoire de credentials, par contre je n'ai pas beaucoup d'infos sur
les credentials, je vais essayer de trouver de l'info là-dessus.

Jean-Michel

"Paul Bacelar" a écrit :

> La trace montre une erreur dans GetCoureur, pas dans DataBind.
> --
> Paul Bacelar
>
> "Jean-Michel" > news:
> > Bonjour Paul,
> >
> > J'ai suivi vos conseils, mais malheureusement dans mon cas, ça n'a pas
> > résolu le problème, j'ai toutefois trouvé dans mon code la ligne qui pose
> > problème, dans mon Form Load j'alimente mon Datagrid avec les données de
> la
> > base, et c'est la ligne Me.DataGrid1.DataBind() qui déclenche l'eereur,
> voici
> > l'ensemble de mon code sur Page Load.
> >
> > Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
> > System.EventArgs) Handles MyBase.Load
> > 'Placez ici le code utilisateur pour initialiser la page
> > Dim ws As New CoureurWebClient.localhost.CoureurService
> > ws.Credentials = System.Net.CredentialCache.DefaultCredentials
> > CoureurData.Merge(ws.GetCoureur())
> > If Not Page.IsPostBack Then
> > Me.DataGrid1.DataBind()
> > End If
> > End Sub
> >
> > Si par expérience, vous voyez ou est le problème, Merci d'avance
> >
> > Jean-Michel
> >
> > Passez une bonne journée.
> >
> > "Paul Bacelar" a écrit :
> >
> > > Avec votre manipulation dans IIS vous interdisez l'accès aux personnes
> non
> > > identifiés aux pages web de votre application.
> > >
> > > C'est très bien, mais voila, il y toujours un petit hic ;-).
> > >
> > > IIS n'autorise que les personnes identifiées à se connecter mais comme
> c'est
> > > une application ASP.NET, IIS transfert à la page de login de
> l'application
> > > la charge d'authentifier l'utilisateur puisque les personnes anonymes
> sont
> > > interdites et que l'on peut customiser la mécanique d'authentification
> avec
> > > ASP.NET.
> > >
> > > Si dans votre web.config, vous avez <allow users="?" /> au lieu de <deny
> > > users="?" />, vous autorisez toutes les personnes non authentifiées à se
> > > connecter et ASP.NET dit à IIS que c'est OK pour le nouveau venu avec un
> > > cookie de session et tout le toutim.
> > >
> > > Vous avez donc une personne inconnue qui accède à vos pages. Si la
> personne
> > > est inconnue le "<identity impersonate="true"/>" doit laisser le thread
> ASP
> > > sur son compte par défaut qui est fonction de la version d'IIS (ASPNET
> pour
> > > IIS5, me rappel plus pour IIS6)
> > > Ces comptes sont locaux à la machine contenant IIS et lors de la
> connexion à
> > > SQLServer, la sécurité intégré window doit vous rejeter.
> > >
> > > Donc essayer "<deny users="?" />" pour savoir si le problème n'est pas
> juste
> > > un problème de sécurité.
> > > --
> > > Paul Bacelar
> > >
> > >
> > > "Jean-Michel" > > > news:
> > > > Bonsoir Paul,
> > > >
> > > > Merci pour votre gentillesse, votre aide me permet de progresser, le
> > > > Développement ASP est vraiment très intéressant, relativement
> complexe,
> > > > heureusement qu'il y a des gens comme vous pour aider les débutants.
> > > >
> > > > Pour répondre à vos remarques :
> > > > Oui, j'ai bien mentionné au niveau des deux web config (1 Web.config
> pour
> > > > mon projet web service et un web.config pour mon projet web asp) la
> > > mention
> > > > <identity impersonate="true"/>
> > > > J'ai également interdit les connexions anonymes sur mes 2 projets,
> j'ai
> > > > réalisé cette opération par l'intermédiaire de IIS (click droit sur le
> > > projet
> > > > puis sécu du répertoire, etc...).
> > > > Vous me parlez d'interdire l'accès des pages aux anonymes, est-ce par
> > > > l'intermédiaire du web.config avec les instructions du type
> > > > <allow users="?" />
> > > >
> > > > Bonne Journée à vous,
> > > >
> > > > Jean-Michel
> > > >
> > > > "Paul Bacelar" a écrit :
> > > >
> > > > > Oui, c'est bien la connexion à la BDD.
> > > > >
> > > > > La callstack que vous nous avez donnée semble sans ambiguïté. C'est
> dans
> > > la
> > > > > méthode Open qui est appelé en interne par Fill d'un DbDataAdapter
> que
> > > le
> > > > > problème ce produit.
> > > > >
> > > > > Il ce peut que cela soit la commande du Fill qui n'est pas bonne
> puisque
> > > la
> > > > > connexion est ouvert sur cette méthode.
> > > > >
> > > > > Le plus probable semble un problème de sécurité.
> > > > >
> > > > > Vérifiez votre impersonnalisation de l'application ASP.NET (dans le
> > > > > web.config) et l'accès aux pages interdites aux anonymes.
> > > > >
> > > > > On a tous débuté un jour et votre question ne semble pas être si
> simple
> > > et
> > > > > si courante.
> > > > > --
> > > > > Paul Bacelar
> > > > >
> > > > >
> > > > > "Jean-Michel" > message
> > > > > news:
> > > > > > Bonjour Paul,
> > > > > >
> > > > > > Merci pour votre aide, mais je voudrais juste préciser un point,
> en
> > > local
> > > > > > mon appli fonctionne correctement, est-ce alors possible dans ce
> cas
> > > que
> > > > > ce
> > > > > > soit un problème de connexion ?
> > > > > >
> > > > > > Quand vous parlez de connexion, vous pensez bien à la connexion à
> la
> > > base
> > > > > de
> > > > > > données ?
> > > > > >
> > > > > > Je ne suis plus tout à fait débutant, mais encore trop peu
> > > expérimenté,
> > > > > > mes questions vous paraîtront peut-être simplettes !
> > > > > >
> > > > > > En tout cas merci pour votre temps,
> > > > > >
> > > > > > Jean-Michel
> > > > > >
> > > > > >
> > > > > > "Paul Bacelar" a écrit :
> > > > > >
> > > > > > > Vous avez un problème sur la méthode "Open" de votre connection.
> > > > > Vérifiez
> > > > > > > votre chaîne de connexion.
> > > > > > > --
> > > > > > > Paul Bacelar
> > > > > > >
> > > > > > > "Jean-Michel" > > > message
> > > > > > > news:
> > > > > > > > Bonjour,
> > > > > > > >
> > > > > > > > Mon système est un xp pro, j'utilise IIS comme serveur web.
> > > > > > > >
> > > > > > > > J'ai écrit avec VB.Net en asp : un service Web asp qui propose
> une
> > > > > méthode
> > > > > > > > d'envoi de données et une méthode de mise à jour de données.
> le
> > > > > service
> > > > > > > web
> > > > > > > > fait appel à une base de données access.
> > > > > > > >
> > > > > > > > D'autre part , j'ai écrit une application client web asp qui
> fait
> > > > > appel à
> > > > > > > > mon service web pour l'affichage et la mise à jour des
> données.
> > > > > > > >
> > > > > > > > Je n'arrive pas à exécuter mes pages web clients depuis
> internet
> > > j'ai
> > > > > le
> > > > > > > > message suivant (je vous accorde que ce n'est pas très
> lisible,
> > > j'ai
> > > > > fait
> > > > > > > un
> > > > > > > > copier-coller).
> > > > > > > >
> > > > > > > > Si quelqu'un a assez d'éléments pour me guider dans la voie à
> > > suivre,
> > > > > je
> > > > > > > ne
> > > > > > > > pense pas que ce soit un problème de sécurité parce que quand
> > > j'enlève
> > > > > de
> > > > > > > mes
> > > > > > > > pages asp l'accès aux données je peux accéder à mes pages
> depuis
> > > > > internet.
> > > > > > > >
> > > > > > > > Voici le message d'erreur qui s'affiche sur le poste client.
> > > > > > > >
> > > > > > > > D'avance, merci pour votre aide,
> > > > > > > >
> > > > > > > > Jean-Michel
> > > > > > > >
> > > > > > > > Détails de l'exception:
> > > System.Web.Services.Protocols.SoapException:
> > > > > > > > System.Web.Services.Protocols.SoapException: Le serveur n'a
> pas pu
> > > > > traiter
> > > > > > > la
> > > > > > > > demande. ---> System.Data.OleDb.OleDbException: Erreur non
> > > spécifiée
> > > > > at
> > > > > > > > System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> > > > > > > > System.Data.OleDb.OleDbConnection.InitializeProvider() at
> > > > > > > > System.Data.OleDb.OleDbConnection.Open() at
> > > > > > > > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > > connection,
> > > > > > > > ConnectionState& originalState) at
> > > > > > > > System.Data.Common.DbDataAdapter.FillFromCommand(Object data,
> > > Int32
> > > > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> > > command,
> > > > > > > > CommandBehavior behavior) at
> > > > > System.Data.Common.DbDataAdapter.Fill(DataSet
> > > > > > > > dataSet, Int32 startRecord, Int32 maxRecords, String srcTable,
> > > > > IDbCommand
> > > > > > > > command, CommandBehavior behavior) at
> > > > > > > > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at
> > > > > > > > CoureurWebService.CoureurService.GetCoureur() --- Fin de la
> trace
> > > de
> > > > > la
> > > > > > > pile
> > > > > > > > d'exception interne ---
> > > > > > > >
> > > > > > > > Erreur source:
> > > > > > > >
> > > > > > > > Une exception non gérée s'est produite lors de l'exécution de
> la
> > > > > demande
> > > > > > > Web
> > > > > > > > actuelle. Les informations relatives à l'origine et
> l'emplacement
> > > de
> > > > > > > > l'exception peuvent être identifiées en utilisant la trace de
> la
> > > pile
> > > > > > > > d'exception ci-dessous.
> > > > > > > >
> > > > > > > > Trace de la pile:
> > > > > > > >
> > > > > > > >
> > > > > > > > [SoapException: System.Web.Services.Protocols.SoapException:
> Le
> > > > > serveur
> > > > > > > n'a
> > > > > > > > pas pu traiter la demande. --->
> System.Data.OleDb.OleDbException:
> > > > > Erreur
> > > > > > > non
> > > > > > > > spécifiée
> > > > > > > > at System.Data.OleDb.OleDbConnection.ProcessResults(Int32
> hr)
> > > > > > > > at System.Data.OleDb.OleDbConnection.InitializeProvider()
> > > > > > > > at System.Data.OleDb.OleDbConnection.Open()
> > > > > > > > at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > > > > connection,
> > > > > > > > ConnectionState& originalState)
> > > > > > > > at System.Data.Common.DbDataAdapter.FillFromCommand(Object
> > > data,
> > > > > Int32
> > > > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> > > command,
> > > > > > > > CommandBehavior behavior)
> > > > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet,
> Int32
> > > > > > > > startRecord, Int32 maxRecords, String srcTable, IDbCommand
> > > command,
> > > > > > > > CommandBehavior behavior)
> > > > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
> > > > > > > > at CoureurWebService.CoureurService.GetCoureur()
> > > > > > > > --- Fin de la trace de la pile d'exception interne ---]
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > >
> > >
> System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> > > > > > > Message message, WebResponse response, Stream responseStream,
> > > Boolean
> > > > > > > asyncCall)
> > > > > > > >
> > > System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > > > > > > > methodName, Object[] parameters)
> > > > > > > > CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > > > > > > > CoureurWebClient.WebForm1.Page_Load(Object sender,
> EventArgs e)
> > > +73
> > > > > > > > System.Web.UI.Control.OnLoad(EventArgs e)
> > > > > > > > System.Web.UI.Control.LoadRecursive()
> > > > > > > > System.Web.UI.Page.ProcessRequestMain()
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > --
> > > > > > > > Jean-Michel
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > >
> > > > >
> > > > >
> > >
> > >
> > >
>
>
>


Paul Bacelar
Le #12058701
Attention, sans cette ligne, la connexion à la base de données se fera
toujours sur le même compte pas défaut d'ASP.NET. Si ta base intègre des
mécanismes de sécurité basés sur des rôles (des utilisateurs n'ayant pas les
mêmes droits sur la base), ils seront pris en défaut et ce sera à ton
application de vérifier les donnés accédées en fonction de l'utilisateur
connecté.
--
Paul Bacelar


"Jean-Michel" news:
Bonsoir,
Ca y est ça marche, pour celà j'ai enlevé la ligne <identity
impersonate="true"/>

Merci encore Paul,

"Jean-Michel" a écrit :

> Bonjour Paul,
>
> Je suis toujours en train de chercher, mais je ne trouve pas, il y a


peut
> être une histoire de credentials, par contre je n'ai pas beaucoup


d'infos sur
> les credentials, je vais essayer de trouver de l'info là-dessus.
>
> Jean-Michel
>
> "Paul Bacelar" a écrit :
>
> > La trace montre une erreur dans GetCoureur, pas dans DataBind.
> > --
> > Paul Bacelar
> >
> > "Jean-Michel" > > news:
> > > Bonjour Paul,
> > >
> > > J'ai suivi vos conseils, mais malheureusement dans mon cas, ça n'a


pas
> > > résolu le problème, j'ai toutefois trouvé dans mon code la ligne qui


pose
> > > problème, dans mon Form Load j'alimente mon Datagrid avec les


données de
> > la
> > > base, et c'est la ligne Me.DataGrid1.DataBind() qui déclenche


l'eereur,
> > voici
> > > l'ensemble de mon code sur Page Load.
> > >
> > > Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
> > > System.EventArgs) Handles MyBase.Load
> > > 'Placez ici le code utilisateur pour initialiser la page
> > > Dim ws As New CoureurWebClient.localhost.CoureurService
> > > ws.Credentials System.Net.CredentialCache.DefaultCredentials
> > > CoureurData.Merge(ws.GetCoureur())
> > > If Not Page.IsPostBack Then
> > > Me.DataGrid1.DataBind()
> > > End If
> > > End Sub
> > >
> > > Si par expérience, vous voyez ou est le problème, Merci d'avance
> > >
> > > Jean-Michel
> > >
> > > Passez une bonne journée.
> > >
> > > "Paul Bacelar" a écrit :
> > >
> > > > Avec votre manipulation dans IIS vous interdisez l'accès aux


personnes
> > non
> > > > identifiés aux pages web de votre application.
> > > >
> > > > C'est très bien, mais voila, il y toujours un petit hic ;-).
> > > >
> > > > IIS n'autorise que les personnes identifiées à se connecter mais


comme
> > c'est
> > > > une application ASP.NET, IIS transfert à la page de login de
> > l'application
> > > > la charge d'authentifier l'utilisateur puisque les personnes


anonymes
> > sont
> > > > interdites et que l'on peut customiser la mécanique


d'authentification
> > avec
> > > > ASP.NET.
> > > >
> > > > Si dans votre web.config, vous avez <allow users="?" /> au lieu de


<deny
> > > > users="?" />, vous autorisez toutes les personnes non


authentifiées à se
> > > > connecter et ASP.NET dit à IIS que c'est OK pour le nouveau venu


avec un
> > > > cookie de session et tout le toutim.
> > > >
> > > > Vous avez donc une personne inconnue qui accède à vos pages. Si la
> > personne
> > > > est inconnue le "<identity impersonate="true"/>" doit laisser le


thread
> > ASP
> > > > sur son compte par défaut qui est fonction de la version d'IIS


(ASPNET
> > pour
> > > > IIS5, me rappel plus pour IIS6)
> > > > Ces comptes sont locaux à la machine contenant IIS et lors de la
> > connexion à
> > > > SQLServer, la sécurité intégré window doit vous rejeter.
> > > >
> > > > Donc essayer "<deny users="?" />" pour savoir si le problème n'est


pas
> > juste
> > > > un problème de sécurité.
> > > > --
> > > > Paul Bacelar
> > > >
> > > >
> > > > "Jean-Michel"

message
> > > > news:
> > > > > Bonsoir Paul,
> > > > >
> > > > > Merci pour votre gentillesse, votre aide me permet de


progresser, le
> > > > > Développement ASP est vraiment très intéressant, relativement
> > complexe,
> > > > > heureusement qu'il y a des gens comme vous pour aider les


débutants.
> > > > >
> > > > > Pour répondre à vos remarques :
> > > > > Oui, j'ai bien mentionné au niveau des deux web config (1


Web.config
> > pour
> > > > > mon projet web service et un web.config pour mon projet web asp)


la
> > > > mention
> > > > > <identity impersonate="true"/>
> > > > > J'ai également interdit les connexions anonymes sur mes 2


projets,
> > j'ai
> > > > > réalisé cette opération par l'intermédiaire de IIS (click droit


sur le
> > > > projet
> > > > > puis sécu du répertoire, etc...).
> > > > > Vous me parlez d'interdire l'accès des pages aux anonymes,


est-ce par
> > > > > l'intermédiaire du web.config avec les instructions du type
> > > > > <allow users="?" />
> > > > >
> > > > > Bonne Journée à vous,
> > > > >
> > > > > Jean-Michel
> > > > >
> > > > > "Paul Bacelar" a écrit :
> > > > >
> > > > > > Oui, c'est bien la connexion à la BDD.
> > > > > >
> > > > > > La callstack que vous nous avez donnée semble sans ambiguïté.


C'est
> > dans
> > > > la
> > > > > > méthode Open qui est appelé en interne par Fill d'un


DbDataAdapter
> > que
> > > > le
> > > > > > problème ce produit.
> > > > > >
> > > > > > Il ce peut que cela soit la commande du Fill qui n'est pas


bonne
> > puisque
> > > > la
> > > > > > connexion est ouvert sur cette méthode.
> > > > > >
> > > > > > Le plus probable semble un problème de sécurité.
> > > > > >
> > > > > > Vérifiez votre impersonnalisation de l'application ASP.NET


(dans le
> > > > > > web.config) et l'accès aux pages interdites aux anonymes.
> > > > > >
> > > > > > On a tous débuté un jour et votre question ne semble pas être


si
> > simple
> > > > et
> > > > > > si courante.
> > > > > > --
> > > > > > Paul Bacelar
> > > > > >
> > > > > >
> > > > > > "Jean-Michel" > > message
> > > > > > news:
> > > > > > > Bonjour Paul,
> > > > > > >
> > > > > > > Merci pour votre aide, mais je voudrais juste préciser un


point,
> > en
> > > > local
> > > > > > > mon appli fonctionne correctement, est-ce alors possible


dans ce
> > cas
> > > > que
> > > > > > ce
> > > > > > > soit un problème de connexion ?
> > > > > > >
> > > > > > > Quand vous parlez de connexion, vous pensez bien à la


connexion à
> > la
> > > > base
> > > > > > de
> > > > > > > données ?
> > > > > > >
> > > > > > > Je ne suis plus tout à fait débutant, mais encore trop peu
> > > > expérimenté,
> > > > > > > mes questions vous paraîtront peut-être simplettes !
> > > > > > >
> > > > > > > En tout cas merci pour votre temps,
> > > > > > >
> > > > > > > Jean-Michel
> > > > > > >
> > > > > > >
> > > > > > > "Paul Bacelar" a écrit :
> > > > > > >
> > > > > > > > Vous avez un problème sur la méthode "Open" de votre


connection.
> > > > > > Vérifiez
> > > > > > > > votre chaîne de connexion.
> > > > > > > > --
> > > > > > > > Paul Bacelar
> > > > > > > >
> > > > > > > > "Jean-Michel"

in
> > > > message
> > > > > > > > news:
> > > > > > > > > Bonjour,
> > > > > > > > >
> > > > > > > > > Mon système est un xp pro, j'utilise IIS comme serveur


web.
> > > > > > > > >
> > > > > > > > > J'ai écrit avec VB.Net en asp : un service Web asp qui


propose
> > une
> > > > > > méthode
> > > > > > > > > d'envoi de données et une méthode de mise à jour de


données.
> > le
> > > > > > service
> > > > > > > > web
> > > > > > > > > fait appel à une base de données access.
> > > > > > > > >
> > > > > > > > > D'autre part , j'ai écrit une application client web asp


qui
> > fait
> > > > > > appel à
> > > > > > > > > mon service web pour l'affichage et la mise à jour des
> > données.
> > > > > > > > >
> > > > > > > > > Je n'arrive pas à exécuter mes pages web clients depuis
> > internet
> > > > j'ai
> > > > > > le
> > > > > > > > > message suivant (je vous accorde que ce n'est pas très
> > lisible,
> > > > j'ai
> > > > > > fait
> > > > > > > > un
> > > > > > > > > copier-coller).
> > > > > > > > >
> > > > > > > > > Si quelqu'un a assez d'éléments pour me guider dans la


voie à
> > > > suivre,
> > > > > > je
> > > > > > > > ne
> > > > > > > > > pense pas que ce soit un problème de sécurité parce que


quand
> > > > j'enlève
> > > > > > de
> > > > > > > > mes
> > > > > > > > > pages asp l'accès aux données je peux accéder à mes


pages
> > depuis
> > > > > > internet.
> > > > > > > > >
> > > > > > > > > Voici le message d'erreur qui s'affiche sur le poste


client.
> > > > > > > > >
> > > > > > > > > D'avance, merci pour votre aide,
> > > > > > > > >
> > > > > > > > > Jean-Michel
> > > > > > > > >
> > > > > > > > > Détails de l'exception:
> > > > System.Web.Services.Protocols.SoapException:
> > > > > > > > > System.Web.Services.Protocols.SoapException: Le serveur


n'a
> > pas pu
> > > > > > traiter
> > > > > > > > la
> > > > > > > > > demande. ---> System.Data.OleDb.OleDbException: Erreur


non
> > > > spécifiée
> > > > > > at
> > > > > > > > > System.Data.OleDb.OleDbConnection.ProcessResults(Int32


hr) at
> > > > > > > > > System.Data.OleDb.OleDbConnection.InitializeProvider()


at
> > > > > > > > > System.Data.OleDb.OleDbConnection.Open() at
> > > > > > > > > System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > > > connection,
> > > > > > > > > ConnectionState& originalState) at
> > > > > > > > > System.Data.Common.DbDataAdapter.FillFromCommand(Object


data,
> > > > Int32
> > > > > > > > > startRecord, Int32 maxRecords, String srcTable,


IDbCommand
> > > > command,
> > > > > > > > > CommandBehavior behavior) at
> > > > > > System.Data.Common.DbDataAdapter.Fill(DataSet
> > > > > > > > > dataSet, Int32 startRecord, Int32 maxRecords, String


srcTable,
> > > > > > IDbCommand
> > > > > > > > > command, CommandBehavior behavior) at
> > > > > > > > > System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)


at
> > > > > > > > > CoureurWebService.CoureurService.GetCoureur() --- Fin de


la
> > trace
> > > > de
> > > > > > la
> > > > > > > > pile
> > > > > > > > > d'exception interne ---
> > > > > > > > >
> > > > > > > > > Erreur source:
> > > > > > > > >
> > > > > > > > > Une exception non gérée s'est produite lors de


l'exécution de
> > la
> > > > > > demande
> > > > > > > > Web
> > > > > > > > > actuelle. Les informations relatives à l'origine et
> > l'emplacement
> > > > de
> > > > > > > > > l'exception peuvent être identifiées en utilisant la


trace de
> > la
> > > > pile
> > > > > > > > > d'exception ci-dessous.
> > > > > > > > >
> > > > > > > > > Trace de la pile:
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > [SoapException:


System.Web.Services.Protocols.SoapException:
> > Le
> > > > > > serveur
> > > > > > > > n'a
> > > > > > > > > pas pu traiter la demande. --->
> > System.Data.OleDb.OleDbException:
> > > > > > Erreur
> > > > > > > > non
> > > > > > > > > spécifiée
> > > > > > > > > at


System.Data.OleDb.OleDbConnection.ProcessResults(Int32
> > hr)
> > > > > > > > > at


System.Data.OleDb.OleDbConnection.InitializeProvider()
> > > > > > > > > at System.Data.OleDb.OleDbConnection.Open()
> > > > > > > > > at


System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection
> > > > > > connection,
> > > > > > > > > ConnectionState& originalState)
> > > > > > > > > at


System.Data.Common.DbDataAdapter.FillFromCommand(Object
> > > > data,
> > > > > > Int32
> > > > > > > > > startRecord, Int32 maxRecords, String srcTable,


IDbCommand
> > > > command,
> > > > > > > > > CommandBehavior behavior)
> > > > > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet


dataSet,
> > Int32
> > > > > > > > > startRecord, Int32 maxRecords, String srcTable,


IDbCommand
> > > > command,
> > > > > > > > > CommandBehavior behavior)
> > > > > > > > > at System.Data.Common.DbDataAdapter.Fill(DataSet


dataSet)
> > > > > > > > > at CoureurWebService.CoureurService.GetCoureur()
> > > > > > > > > --- Fin de la trace de la pile d'exception


interne ---]
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > >
> > > >
> >


System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClient
> > > > > > > > Message message, WebResponse response, Stream


responseStream,
> > > > Boolean
> > > > > > > > asyncCall)
> > > > > > > > >
> > > > System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> > > > > > > > > methodName, Object[] parameters)
> > > > > > > > >


CoureurWebClient.localhost.CoureurService.GetCoureur() +34
> > > > > > > > > CoureurWebClient.WebForm1.Page_Load(Object sender,
> > EventArgs e)
> > > > +73
> > > > > > > > > System.Web.UI.Control.OnLoad(EventArgs e)
> > > > > > > > > System.Web.UI.Control.LoadRecursive()
> > > > > > > > > System.Web.UI.Page.ProcessRequestMain()
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > --
> > > > > > > > > Jean-Michel
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > >
> > > >
> > > >
> >
> >
> >


Poster une réponse
Anonyme