Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

https remoting

Posted on 2004-08-05
10
Medium Priority
?
361 Views
Last Modified: 2012-05-05
Hi,

I have a remoting application which uses a binary formatter over tcp, this isn't hosted within IIS, but within my own application server.

I am releasing the application to a client who want to connect over the web.

I'm a little concerned about security, i.e. can someone hack the application by using the open port ?? or is there some kind of handshaking between legitimate clients trying to connect.

Ideally, I'd like to encrypt the data being sent. We have an SSL certificate, is there any way this can be used to encrypt the data.

I've done some web-searches, but can only find info on using SSL when hosted within IIS, which isn't an option.

Thanks
Smg.
0
Comment
Question by:smegghead
  • 5
  • 2
10 Comments
 
LVL 37

Accepted Solution

by:
gregoryyoung earned 2000 total points
ID: 11730461
0
 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11730470
smegghead: please email me per other question ... I forget to put my pants on in the morning sometimes when I go to work :)
0
 
LVL 10

Author Comment

by:smegghead
ID: 11730486
I did email you, tried three different addresses (tried to work them out from your profile).. got two bounce backs, so assumed the 3rd worked.

Mine is on my profile also, so you might be better emailing me !! :-)

Chrs
Smg.
0
Free Backup Tool for VMware and Hyper-V

Restore full virtual machine or individual guest files from 19 common file systems directly from the backup file. Schedule VM backups with PowerShell scripts. Set desired time, lean back and let the script to notify you via email upon completion.  

 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11730501
gregoryyoung@ee
0
 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11730515
0
 
LVL 4

Expert Comment

by:Eran_R
ID: 11730728
The .NET remoting framework provides a lot of extensibility options.

Almost all extensions to the .NET remoting involve implementating IMessageSink.
.NET remoted calls go through the following chain:

[Client side]
call -> TransparentProxy -> RealProxy -> EnvoySinkChain -> ClientContextSinkChain -> ClientChannelSinkChain

<transport>

[Server side]
ServerChannelSinkChain -> ServerContextSinkChain -> ServerObjectSinkChain -> StackBuilderSink -> method call

You can choose to implement some sort of encryption on one of these sink chains, for example, client and server channel sinks (symmetric).

I must say that implementing such stuff requires a good understanding of .NET remoting infrastructure.
The following books are pretty good, and contain some examples of customized sinks:

"Microsoft .NET Remoting" - Microsoft Press - ISBN:0735617783
"Advanced .NET Remoting (C# Edition)" - Apress - ISBN:1590590252 (Contains encryption example)

Since you need some special action performed on both server side and client side, proxies are not the solution. You need to use message sinks to acheive what you want.

The website www.idesign.net also contains some resources and sample code for .NET remoting specialization (go to the Downloads section)

Hope this helps
0
 
LVL 4

Expert Comment

by:Eran_R
ID: 11750146
I stumbled upon an article on MSDN that answers your needs exactly!

here's the link:
Part I - http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/remsspi.asp
Part II - http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/remsec.asp (What you need)

Part II contains an example of using custom channel sinks to add security to .NET remoting
0
 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11750212
Eran_R please read my last post...

0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

More often than not, we developers are confronted with a need: a need to make some kind of magic happen via code. Whether it is for a client, for the boss, or for our own personal projects, the need must be satisfied. Most of the time, the Framework…
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
This video shows how to quickly and easily deploy an email signature for all users in Office 365 and prevent it from being added to replies and forwards. (the resulting signature is applied on the server level in Exchange Online) The email signat…
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Suggested Courses

972 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question