Re: Remoting Problem
Nicole
I got it to work. The final code on the client side was:
Private Sub ClientForm_Load (ByVal sender As System.Object, ByVal e As
System.EventArg s) Handles
MyBase.Load
Dim _NWInfo As iNWInfo
Dim serverURL As String =
"http://localhost/dotNET/RemotingTest/NWInfo.rem"
txtResults.Text = "Welcome to the client application." & vbCrLf
txtResults.Text += "Console Identity: " +
WindowsIdentity .GetCurrent().N ame
_NWInfo =
CType(Activator .GetObject(GetT ype(RemotingInt erface.iNWInfo) , serverURL),
RemotingInterfa ce.iNWInfo)
Dim channelproperti es As IDictionary
channelproperti es =
ChannelServices .GetChannelSink Properties(_NWI nfo)
channelproperti es("credentials ") =
CredentialCache .DefaultCredent ials
txtResults.Text = txtResults.Text & vbCrLf & vbCrLf & "Trying to get
the text message: "
Try
txtResults.Text = txtResults.Text & vbCrLf & _NWInfo.GetMess age
Catch ex As Exception
txtResults.Text = txtResults.Text & vbCrLf & ex.Message
End Try
txtResults.Text = txtResults.Text & vbCrLf & vbCrLf & "Trying
GetMostExpensiv eProducts: "
Try
Dim dt As DataTable
Dim row As DataRow
dt = _NWInfo.GetMost ExpensiveProduc ts
For Each row In dt.Rows
txtResults.Text = txtResults.Text & vbCrLf & row.Item(0)
Next
Catch ex As Exception
txtResults.Text = txtResults.Text & vbCrLf & ex.Message
End Try
txtResults.Sele ctionLength = 0
End Sub
I had a series of cascading errors in the previous code that I finally
managed to untangle today.
Thank you for the help.
Ron L
"Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in message
news:uC0ZpVGaFH A.1040@TK2MSFTN GP10.phx.gbl...[color=blue]
>I can't see any obvious problems in your code. Do you still get a 401
>error if you try to reproduce the simple sample from
>http://msdn.microsoft.com/library/en...tinginiis.asp?
>If not, what happens if you modify the client to use programmatic
>configuratio n of the URL and credentials instead of reading these from the
>config file?
>
>
>
> "Ron L" <ronl@bogus.Add ress.com> wrote in message
> news:%23H31R5sZ FHA.3840@tk2msf tngp13.phx.gbl. ..[color=green]
>> Nicole
>> I have found the code you referenced as an example:
>>
>> IDictionary channelProperti es;
>> channelProperti es = ChannelServices .GetChannelSink Properties(prox y);
>> channelProperti es ["credential s"] =
>> CredentialCache .DefaultCredent ials;
>>
>> The thing I am not able to come up with is where the variable "proxy" is
>> set and what is it? If I try making it be the RemotingInterfa ce object
>> in the code below, I still get my (401) Unauthorized error. Can you
>> clear this up for me?
>>
>> TIA
>> Ron L
>>
>> ------------------------------ Code
>> Stub -------------------------------------------
>> Sub Main()
>> Dim _NWInfo As iNWInfo
>> Dim serverURL As String =
>> "http://localhost/dotNET/RemotingTest/NWInfo.rem"
>>
>> Console.WriteLi ne("Welcome to the client application.")
>>
>> _NWInfo =
>> CType(Activator .GetObject(GetT ype(RemotingInt erface.iNWInfo) , serverURL),
>> RemotingInterfa ce.iNWInfo)
>>
>> Dim channelProperti es As IDictionary
>> channelProperti es =
>> ChannelServices .GetChannelSink Properties(_NWI nfo)
>> channelProperti es("credentials ") =
>> System.Net.Cred entialCache.Def aultCredentials
>> Console.WriteLi ne(channelPrope rties("credenti als"))
>>
>>
>> Console.WriteLi ne(_NWInfo.GetM essage)
>>
>> Dim dt As DataTable
>> Dim row As DataRow
>> dt = _NWInfo.GetMost ExpensiveProduc ts
>> For Each row In dt.Rows
>> Console.WriteLi ne(row.Item(0))
>> Next
>> Console.WriteLi ne("Press the <enter> key to exit.")
>> Console.Read()
>> End Sub
>> ------------------------------\Code
>> Stub -------------------------------------------
>>
>>
>>
>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in message
>> news:OE8hJrhZFH A.2788@TK2MSFTN GP12.phx.gbl...[color=darkred]
>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>> news:%23d6PdbhZ FHA.1424@TK2MSF TNGP15.phx.gbl. ..
>>>> Nicole
>>>> I have been attempting to wade through the reference you gave me (it
>>>> was the same reference that Gregory gave). What I want my application
>>>> to be able to do is to try the credentials of the currently logged in
>>>> user, and if that fails prompt the user for a username and password.
>>>> Is this two different instances of using specific credentials, or is it
>>>> one instance of using default credentials and one of using specific
>>>> credentials?
>>>
>>> If you want to allow falling back to user-provided credentials, you'll
>>> need to do at least two things:
>>>
>>> 1. Use programmatic configuration of the credentials in your client
>>> application rather than specifying the credentials using channel
>>> attributes in the configuration file. An example of the programmatic
>>> approach is shown in the "Programmat ic configuration" section of the
>>> ".NET Remoting Security" reference.
>>>
>>> 2. Adjust the client code in #1 to attempt to connect to the server
>>> and, if authentication fails, prompt the user for custom credentials
>>> then switch over to using those credentials. An example of setting the
>>> proxy to use such credentials is shown in the "Using specific
>>> credentials" section of the ".NET Remoting Security" reference.
>>>
>>>
>>>
>>>> As to disabling automatic login (setting it to anonymous in Local
>>>> Intranet, and trusted sites), I get the "You are not authorized to view
>>>> this page" error page.
>>>
>>> Good news since this means that the user credentials automatically
>>> provided by IE prior to disabling this behaviour were authenticating
>>> successfully and permitting access to the server.
>>>
>>>
>>>>
>>>> Ron L
>>>>
>>>>
>>>>
>>>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in
>>>> message news:u%23B0XIhZ FHA.3876@TK2MSF TNGP12.phx.gbl. ..
>>>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>>>> news:uIT6LpgZFH A.3960@TK2MSFTN GP10.phx.gbl...
>>>>>> Nicole
>>>>>> I guess I don't know how I am specifying the credentials on the
>>>>>> client side.
>>>>>
>>>>> Then chances are very good that the client credentials aren't being
>>>>> passed. See
>>>>> http://msdn.microsoft.com/library/en...SecNetch11.asp
>>>>> (particularly the "Passing Credentials for Authentication to Remote
>>>>> Objects" section) for possible approaches.
>>>>>
>>>>>
>>>>>> As I said to Gregory, I was assuming that IIS handled the credentials
>>>>>> as it does for ASP.
>>>>>
>>>>> IIS will perform the user authentication, but only if the user's
>>>>> credentials are passed from the client machine, which is something
>>>>> that IIS cannot do. The transparent passing of client credentials that
>>>>> you see when using IE to browse a Windows-authenticated intranet site
>>>>> is because IE is configured to pass those credentials without user
>>>>> intervention. You'll need to make it possible for your client
>>>>> application to pass the same credentials.
>>>>>
>>>>>
>>>>>> As to accessing the server, if I enter the following URL:
>>>>>> http://localhost/dotNet/remotingtest/nwinfo.rem?wsdl
>>>>>>
>>>>>> I get an automatically generated web page listing the message names,
>>>>>> port names, binding names, etc.
>>>>>
>>>>> What happens if you disable the intranet zone automatic logon in IE?
>>>>>
>>>>>
>>>>>>
>>>>>> Ron L
>>>>>>
>>>>>>
>>>>>>
>>>>>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in
>>>>>> message news:%23yJ7ObgZ FHA.3712@TK2MSF TNGP09.phx.gbl. ..
>>>>>>> That looks like your server config file, which isn't what I was
>>>>>>> asking about. On the client, how are you specifying the credentials
>>>>>>> that should be sent to the server? (If you don't know what this
>>>>>>> question means, chances are excellent that you're not sending any
>>>>>>> credentials, which would explain the authentication problem. <g>)
>>>>>>> Also, could you please check if you can access the server via IE?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>>>>>> news:O%231BRRgZ FHA.3096@TK2MSF TNGP15.phx.gbl. ..
>>>>>>>> Nicole
>>>>>>>> Thanks for your response. I am using a web.config file that I
>>>>>>>> have included at the end of this message.
>>>>>>>>
>>>>>>>> Ron L
>>>>>>>>
>>>>>>>> --------------------------Start
>>>>>>>> Web.Config ------------------------------------------------
>>>>>>>> <?xml version="1.0" encoding="utf-8" ?>
>>>>>>>> <configuratio n>
>>>>>>>>
>>>>>>>> <system.web>
>>>>>>>> <compilation defaultLanguage ="vb" debug="true" />
>>>>>>>> <customErrors mode="RemoteOnl y" />
>>>>>>>> <authenticati on mode="Windows" />
>>>>>>>> <authorizatio n>
>>>>>>>> <allow users="*" /> <!-- Allow all users -->
>>>>>>>> <allow verbs="GET" users="*" />
>>>>>>>> </authorization>
>>>>>>>> <trace enabled="false" requestLimit="1 0" pageOutput="fal se"
>>>>>>>> traceMode="Sort ByTime" localOnly="true " />
>>>>>>>> <sessionState
>>>>>>>> mode="Off"
>>>>>>>> />
>>>>>>>> <globalizatio n requestEncoding ="utf-8" responseEncodin g="utf-8"
>>>>>>>> />
>>>>>>>>
>>>>>>>> <identity impersonate="tr ue" />
>>>>>>>>
>>>>>>>> </system.web>
>>>>>>>>
>>>>>>>> <appSettings>
>>>>>>>> <!-- Trusted_Connect ion=yes -->
>>>>>>>> <add key="Connection String"
>>>>>>>> value="Provider =SQLOLEDB;Data Source=Dev2k;In itial
>>>>>>>> Catalog=Northwi nd;Integrated Security=SSPI;T rusted_Connecti on=yes "
>>>>>>>> />
>>>>>>>> </appSettings>
>>>>>>>>
>>>>>>>> <system.runtime .remoting>
>>>>>>>> <application>
>>>>>>>> <!-- the following section defines the classes we're exposing to
>>>>>>>> clients from this host -->
>>>>>>>> <service>
>>>>>>>> <wellknown mode="SingleCal l"
>>>>>>>> objectUri = "NWInfo.rem "
>>>>>>>> type = "RemotingTest.N WInfo, RemotingTest" />
>>>>>>>>
>>>>>>>> </service>
>>>>>>>> <channels>
>>>>>>>> <channel ref="http"
>>>>>>>> useDefaultCrede ntials="true" />
>>>>>>>> </channels>
>>>>>>>> </application>
>>>>>>>> </system.runtime. remoting>
>>>>>>>> </configuration>
>>>>>>>> -------------------------- End
>>>>>>>> Web.Config -----------------------------------------------
>>>>>>>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in
>>>>>>>> message news:uO2gxmfZFH A.3648@TK2MSFTN GP14.phx.gbl...
>>>>>>>>> Have you set the remoting client to pass the default credentials
>>>>>>>>> to the server? If so, how? Also, what happens when you attempt
>>>>>>>>> to browse to the server URL in IE?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>>>>>>>> news:eg4E7IeZFH A.3220@TK2MSFTN GP14.phx.gbl...
>>>>>>>>>> We are working on a distributed VB.Net application which will
>>>>>>>>>> access a SQL database located on a known server. Each client
>>>>>>>>>> will run on the user's local machine. To implement this, we are
>>>>>>>>>> trying to use remoting for our access to the SQL server, with the
>>>>>>>>>> remoting being via IIS. Since all of our users will have accounts
>>>>>>>>>> in the destination domain, we want to have IIS handle the
>>>>>>>>>> security for us and not allow anonymous. We have set this up with
>>>>>>>>>> one of our development clients and servers, but when we try to
>>>>>>>>>> connect we get the following error message:
>>>>>>>>>> An unhandled exception of type 'System.Net.Web Exception'
>>>>>>>>>> occurred in mscorlib.dll
>>>>>>>>>>
>>>>>>>>>> Additional information: the remote server returned an error:
>>>>>>>>>> (401) Unauthorized.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Our configuration is this:
>>>>>>>>>> Component Running on
>>>>>>>>>> Module1 the development machine
>>>>>>>>>> RemotingTest IIS on the development machine
>>>>>>>>>> NorthWind DB SQL Server on another server
>>>>>>>>>>
>>>>>>>>>> IIS is configured for Windows Authentication, and the directory
>>>>>>>>>> with the RemotingTest object has "Script Source Access" set and
>>>>>>>>>> the Execute Permissions are set to "Scripts and Executables". We
>>>>>>>>>> have also tried with setting IIS to Allow Anonymous, which moves
>>>>>>>>>> the error out to the SQL connection (with the error message of
>>>>>>>>>> "can't make a connection for user NULL"). Even if anonymous did
>>>>>>>>>> work, it would be a problem for us since the application we are
>>>>>>>>>> using requires the username to be accessible.
>>>>>>>>>>
>>>>>>>>>> The SQL server is in a different domain from development machine,
>>>>>>>>>> however a trust relationship exists between the two domains. We
>>>>>>>>>> have verified that the trust works by opening the NorthWind
>>>>>>>>>> database in Enterprise Manager on the development machine.
>>>>>>>>>>
>>>>>>>>>> Can anyone tell us what we are doing wrong here?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>[/color]
>>
>>[/color]
>
>[/color]
Nicole
I got it to work. The final code on the client side was:
Private Sub ClientForm_Load (ByVal sender As System.Object, ByVal e As
System.EventArg s) Handles
MyBase.Load
Dim _NWInfo As iNWInfo
Dim serverURL As String =
"http://localhost/dotNET/RemotingTest/NWInfo.rem"
txtResults.Text = "Welcome to the client application." & vbCrLf
txtResults.Text += "Console Identity: " +
WindowsIdentity .GetCurrent().N ame
_NWInfo =
CType(Activator .GetObject(GetT ype(RemotingInt erface.iNWInfo) , serverURL),
RemotingInterfa ce.iNWInfo)
Dim channelproperti es As IDictionary
channelproperti es =
ChannelServices .GetChannelSink Properties(_NWI nfo)
channelproperti es("credentials ") =
CredentialCache .DefaultCredent ials
txtResults.Text = txtResults.Text & vbCrLf & vbCrLf & "Trying to get
the text message: "
Try
txtResults.Text = txtResults.Text & vbCrLf & _NWInfo.GetMess age
Catch ex As Exception
txtResults.Text = txtResults.Text & vbCrLf & ex.Message
End Try
txtResults.Text = txtResults.Text & vbCrLf & vbCrLf & "Trying
GetMostExpensiv eProducts: "
Try
Dim dt As DataTable
Dim row As DataRow
dt = _NWInfo.GetMost ExpensiveProduc ts
For Each row In dt.Rows
txtResults.Text = txtResults.Text & vbCrLf & row.Item(0)
Next
Catch ex As Exception
txtResults.Text = txtResults.Text & vbCrLf & ex.Message
End Try
txtResults.Sele ctionLength = 0
End Sub
I had a series of cascading errors in the previous code that I finally
managed to untangle today.
Thank you for the help.
Ron L
"Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in message
news:uC0ZpVGaFH A.1040@TK2MSFTN GP10.phx.gbl...[color=blue]
>I can't see any obvious problems in your code. Do you still get a 401
>error if you try to reproduce the simple sample from
>http://msdn.microsoft.com/library/en...tinginiis.asp?
>If not, what happens if you modify the client to use programmatic
>configuratio n of the URL and credentials instead of reading these from the
>config file?
>
>
>
> "Ron L" <ronl@bogus.Add ress.com> wrote in message
> news:%23H31R5sZ FHA.3840@tk2msf tngp13.phx.gbl. ..[color=green]
>> Nicole
>> I have found the code you referenced as an example:
>>
>> IDictionary channelProperti es;
>> channelProperti es = ChannelServices .GetChannelSink Properties(prox y);
>> channelProperti es ["credential s"] =
>> CredentialCache .DefaultCredent ials;
>>
>> The thing I am not able to come up with is where the variable "proxy" is
>> set and what is it? If I try making it be the RemotingInterfa ce object
>> in the code below, I still get my (401) Unauthorized error. Can you
>> clear this up for me?
>>
>> TIA
>> Ron L
>>
>> ------------------------------ Code
>> Stub -------------------------------------------
>> Sub Main()
>> Dim _NWInfo As iNWInfo
>> Dim serverURL As String =
>> "http://localhost/dotNET/RemotingTest/NWInfo.rem"
>>
>> Console.WriteLi ne("Welcome to the client application.")
>>
>> _NWInfo =
>> CType(Activator .GetObject(GetT ype(RemotingInt erface.iNWInfo) , serverURL),
>> RemotingInterfa ce.iNWInfo)
>>
>> Dim channelProperti es As IDictionary
>> channelProperti es =
>> ChannelServices .GetChannelSink Properties(_NWI nfo)
>> channelProperti es("credentials ") =
>> System.Net.Cred entialCache.Def aultCredentials
>> Console.WriteLi ne(channelPrope rties("credenti als"))
>>
>>
>> Console.WriteLi ne(_NWInfo.GetM essage)
>>
>> Dim dt As DataTable
>> Dim row As DataRow
>> dt = _NWInfo.GetMost ExpensiveProduc ts
>> For Each row In dt.Rows
>> Console.WriteLi ne(row.Item(0))
>> Next
>> Console.WriteLi ne("Press the <enter> key to exit.")
>> Console.Read()
>> End Sub
>> ------------------------------\Code
>> Stub -------------------------------------------
>>
>>
>>
>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in message
>> news:OE8hJrhZFH A.2788@TK2MSFTN GP12.phx.gbl...[color=darkred]
>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>> news:%23d6PdbhZ FHA.1424@TK2MSF TNGP15.phx.gbl. ..
>>>> Nicole
>>>> I have been attempting to wade through the reference you gave me (it
>>>> was the same reference that Gregory gave). What I want my application
>>>> to be able to do is to try the credentials of the currently logged in
>>>> user, and if that fails prompt the user for a username and password.
>>>> Is this two different instances of using specific credentials, or is it
>>>> one instance of using default credentials and one of using specific
>>>> credentials?
>>>
>>> If you want to allow falling back to user-provided credentials, you'll
>>> need to do at least two things:
>>>
>>> 1. Use programmatic configuration of the credentials in your client
>>> application rather than specifying the credentials using channel
>>> attributes in the configuration file. An example of the programmatic
>>> approach is shown in the "Programmat ic configuration" section of the
>>> ".NET Remoting Security" reference.
>>>
>>> 2. Adjust the client code in #1 to attempt to connect to the server
>>> and, if authentication fails, prompt the user for custom credentials
>>> then switch over to using those credentials. An example of setting the
>>> proxy to use such credentials is shown in the "Using specific
>>> credentials" section of the ".NET Remoting Security" reference.
>>>
>>>
>>>
>>>> As to disabling automatic login (setting it to anonymous in Local
>>>> Intranet, and trusted sites), I get the "You are not authorized to view
>>>> this page" error page.
>>>
>>> Good news since this means that the user credentials automatically
>>> provided by IE prior to disabling this behaviour were authenticating
>>> successfully and permitting access to the server.
>>>
>>>
>>>>
>>>> Ron L
>>>>
>>>>
>>>>
>>>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in
>>>> message news:u%23B0XIhZ FHA.3876@TK2MSF TNGP12.phx.gbl. ..
>>>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>>>> news:uIT6LpgZFH A.3960@TK2MSFTN GP10.phx.gbl...
>>>>>> Nicole
>>>>>> I guess I don't know how I am specifying the credentials on the
>>>>>> client side.
>>>>>
>>>>> Then chances are very good that the client credentials aren't being
>>>>> passed. See
>>>>> http://msdn.microsoft.com/library/en...SecNetch11.asp
>>>>> (particularly the "Passing Credentials for Authentication to Remote
>>>>> Objects" section) for possible approaches.
>>>>>
>>>>>
>>>>>> As I said to Gregory, I was assuming that IIS handled the credentials
>>>>>> as it does for ASP.
>>>>>
>>>>> IIS will perform the user authentication, but only if the user's
>>>>> credentials are passed from the client machine, which is something
>>>>> that IIS cannot do. The transparent passing of client credentials that
>>>>> you see when using IE to browse a Windows-authenticated intranet site
>>>>> is because IE is configured to pass those credentials without user
>>>>> intervention. You'll need to make it possible for your client
>>>>> application to pass the same credentials.
>>>>>
>>>>>
>>>>>> As to accessing the server, if I enter the following URL:
>>>>>> http://localhost/dotNet/remotingtest/nwinfo.rem?wsdl
>>>>>>
>>>>>> I get an automatically generated web page listing the message names,
>>>>>> port names, binding names, etc.
>>>>>
>>>>> What happens if you disable the intranet zone automatic logon in IE?
>>>>>
>>>>>
>>>>>>
>>>>>> Ron L
>>>>>>
>>>>>>
>>>>>>
>>>>>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in
>>>>>> message news:%23yJ7ObgZ FHA.3712@TK2MSF TNGP09.phx.gbl. ..
>>>>>>> That looks like your server config file, which isn't what I was
>>>>>>> asking about. On the client, how are you specifying the credentials
>>>>>>> that should be sent to the server? (If you don't know what this
>>>>>>> question means, chances are excellent that you're not sending any
>>>>>>> credentials, which would explain the authentication problem. <g>)
>>>>>>> Also, could you please check if you can access the server via IE?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>>>>>> news:O%231BRRgZ FHA.3096@TK2MSF TNGP15.phx.gbl. ..
>>>>>>>> Nicole
>>>>>>>> Thanks for your response. I am using a web.config file that I
>>>>>>>> have included at the end of this message.
>>>>>>>>
>>>>>>>> Ron L
>>>>>>>>
>>>>>>>> --------------------------Start
>>>>>>>> Web.Config ------------------------------------------------
>>>>>>>> <?xml version="1.0" encoding="utf-8" ?>
>>>>>>>> <configuratio n>
>>>>>>>>
>>>>>>>> <system.web>
>>>>>>>> <compilation defaultLanguage ="vb" debug="true" />
>>>>>>>> <customErrors mode="RemoteOnl y" />
>>>>>>>> <authenticati on mode="Windows" />
>>>>>>>> <authorizatio n>
>>>>>>>> <allow users="*" /> <!-- Allow all users -->
>>>>>>>> <allow verbs="GET" users="*" />
>>>>>>>> </authorization>
>>>>>>>> <trace enabled="false" requestLimit="1 0" pageOutput="fal se"
>>>>>>>> traceMode="Sort ByTime" localOnly="true " />
>>>>>>>> <sessionState
>>>>>>>> mode="Off"
>>>>>>>> />
>>>>>>>> <globalizatio n requestEncoding ="utf-8" responseEncodin g="utf-8"
>>>>>>>> />
>>>>>>>>
>>>>>>>> <identity impersonate="tr ue" />
>>>>>>>>
>>>>>>>> </system.web>
>>>>>>>>
>>>>>>>> <appSettings>
>>>>>>>> <!-- Trusted_Connect ion=yes -->
>>>>>>>> <add key="Connection String"
>>>>>>>> value="Provider =SQLOLEDB;Data Source=Dev2k;In itial
>>>>>>>> Catalog=Northwi nd;Integrated Security=SSPI;T rusted_Connecti on=yes "
>>>>>>>> />
>>>>>>>> </appSettings>
>>>>>>>>
>>>>>>>> <system.runtime .remoting>
>>>>>>>> <application>
>>>>>>>> <!-- the following section defines the classes we're exposing to
>>>>>>>> clients from this host -->
>>>>>>>> <service>
>>>>>>>> <wellknown mode="SingleCal l"
>>>>>>>> objectUri = "NWInfo.rem "
>>>>>>>> type = "RemotingTest.N WInfo, RemotingTest" />
>>>>>>>>
>>>>>>>> </service>
>>>>>>>> <channels>
>>>>>>>> <channel ref="http"
>>>>>>>> useDefaultCrede ntials="true" />
>>>>>>>> </channels>
>>>>>>>> </application>
>>>>>>>> </system.runtime. remoting>
>>>>>>>> </configuration>
>>>>>>>> -------------------------- End
>>>>>>>> Web.Config -----------------------------------------------
>>>>>>>> "Nicole Calinoiu" <calinoiu REMOVETHIS AT gmail DOT com> wrote in
>>>>>>>> message news:uO2gxmfZFH A.3648@TK2MSFTN GP14.phx.gbl...
>>>>>>>>> Have you set the remoting client to pass the default credentials
>>>>>>>>> to the server? If so, how? Also, what happens when you attempt
>>>>>>>>> to browse to the server URL in IE?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> "Ron L" <ronl@bogus.Add ress.com> wrote in message
>>>>>>>>> news:eg4E7IeZFH A.3220@TK2MSFTN GP14.phx.gbl...
>>>>>>>>>> We are working on a distributed VB.Net application which will
>>>>>>>>>> access a SQL database located on a known server. Each client
>>>>>>>>>> will run on the user's local machine. To implement this, we are
>>>>>>>>>> trying to use remoting for our access to the SQL server, with the
>>>>>>>>>> remoting being via IIS. Since all of our users will have accounts
>>>>>>>>>> in the destination domain, we want to have IIS handle the
>>>>>>>>>> security for us and not allow anonymous. We have set this up with
>>>>>>>>>> one of our development clients and servers, but when we try to
>>>>>>>>>> connect we get the following error message:
>>>>>>>>>> An unhandled exception of type 'System.Net.Web Exception'
>>>>>>>>>> occurred in mscorlib.dll
>>>>>>>>>>
>>>>>>>>>> Additional information: the remote server returned an error:
>>>>>>>>>> (401) Unauthorized.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Our configuration is this:
>>>>>>>>>> Component Running on
>>>>>>>>>> Module1 the development machine
>>>>>>>>>> RemotingTest IIS on the development machine
>>>>>>>>>> NorthWind DB SQL Server on another server
>>>>>>>>>>
>>>>>>>>>> IIS is configured for Windows Authentication, and the directory
>>>>>>>>>> with the RemotingTest object has "Script Source Access" set and
>>>>>>>>>> the Execute Permissions are set to "Scripts and Executables". We
>>>>>>>>>> have also tried with setting IIS to Allow Anonymous, which moves
>>>>>>>>>> the error out to the SQL connection (with the error message of
>>>>>>>>>> "can't make a connection for user NULL"). Even if anonymous did
>>>>>>>>>> work, it would be a problem for us since the application we are
>>>>>>>>>> using requires the username to be accessible.
>>>>>>>>>>
>>>>>>>>>> The SQL server is in a different domain from development machine,
>>>>>>>>>> however a trust relationship exists between the two domains. We
>>>>>>>>>> have verified that the trust works by opening the NorthWind
>>>>>>>>>> database in Enterprise Manager on the development machine.
>>>>>>>>>>
>>>>>>>>>> Can anyone tell us what we are doing wrong here?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>[/color]
>>
>>[/color]
>
>[/color]
Comment