W
womin
Hello everybody,
I have a .NET C# client-server application that is being used in two
machines with Windows XP installed. Both the client and the server are
executed into users of a Work Group.
I am using .NET Remoting to connect the client and the server with a TCP
channel. The registration of the channel is made by using the following code:
"ChannelServices.RegisterChannel(channel, true);"
Where "channel" is a TCP channel. The ensureSecurity option is set to "true"
in order to ensure the channel encryption.
Both the client and sever must send objects to each other (usually using a
proxy).
The problem is, although this environment works well in most of the cases, I
have an example where I obtain the following error text when the server tries
to access the client proxy (the error is displayed in the client):
"A remote side security requirement was not fulfilled during authentication.
Try increase the ProtectionLevel and/or ImpersonationLevel".
It is important to remark that the (.NET Remoting) proxies have right
permissions when accessing the server from the client.
After that, I have proved making the following change to the TCP channel:
"ChannelServices.RegisterChannel(channel, false);"
That is, setting "false" the ensureSecurity option. So this means (as the
Microsoft documentation says) that the channel will be encrypted only in case
it is possible. So in this case the error is resolved because although the
server does not have the proper client credentials, the channel will not be
encrypted.
Finally, my question: I mandatory need to ensure the encryption of the
channel, and I need to know which could be the problem with the impersonation
and credentials in the wrong example. Is it machine configuration dependant?
Which is the reason for having two environment apparently identical (Windows
XP, WorkGroup, same users) but with different behavors?
Could you please give me some help about my problem?
Thanks a lot in advance.
Regards,
Domingo.
I have a .NET C# client-server application that is being used in two
machines with Windows XP installed. Both the client and the server are
executed into users of a Work Group.
I am using .NET Remoting to connect the client and the server with a TCP
channel. The registration of the channel is made by using the following code:
"ChannelServices.RegisterChannel(channel, true);"
Where "channel" is a TCP channel. The ensureSecurity option is set to "true"
in order to ensure the channel encryption.
Both the client and sever must send objects to each other (usually using a
proxy).
The problem is, although this environment works well in most of the cases, I
have an example where I obtain the following error text when the server tries
to access the client proxy (the error is displayed in the client):
"A remote side security requirement was not fulfilled during authentication.
Try increase the ProtectionLevel and/or ImpersonationLevel".
It is important to remark that the (.NET Remoting) proxies have right
permissions when accessing the server from the client.
After that, I have proved making the following change to the TCP channel:
"ChannelServices.RegisterChannel(channel, false);"
That is, setting "false" the ensureSecurity option. So this means (as the
Microsoft documentation says) that the channel will be encrypted only in case
it is possible. So in this case the error is resolved because although the
server does not have the proper client credentials, the channel will not be
encrypted.
Finally, my question: I mandatory need to ensure the encryption of the
channel, and I need to know which could be the problem with the impersonation
and credentials in the wrong example. Is it machine configuration dependant?
Which is the reason for having two environment apparently identical (Windows
XP, WorkGroup, same users) but with different behavors?
Could you please give me some help about my problem?
Thanks a lot in advance.
Regards,
Domingo.