B
Brent
Hi everyone, im about to start to design an application where security will
be a must. I am starting to develop a web service that will be used for
winform applications either from the local lan or from the internet. Also, i
might use the same thing in an asp.net web site. I will pass a dataset to
the client from the web service where they can modify the data and send the
dataset back to the server for insert/update/deletes. I might also add some
methods so you don't have to return allow you to return just one entry from
the database instead of everything. Also, allow you to update one entry
without setting the entire dataset back over the line. I am probably going
to use the cryptogaphy functions allong with TripleDES to encrypt
everything. I don't think it will be to bad. What is how do i handle
authentication since there will be no state? When the user enters the
application they will be prompted for a password. This will check their
password compared to a hash that i will store on the DB. Ok everything is
fine and dandy but now how do i make sure they are authenticated before they
call any methods on the web service? I don't want any unauthenticated users
calling this web service. Do i need to pass there password every time? I
know i could probably use SSL but i don't want to overhead of SSL if its
preventable.
One a side note, i contemplated using http based remoting instead of web
services but i already have iis running on my server and i don't want to
have to open another port on my firewall for the remoting piece. I wanted to
still be able to use port 80.
I guess my main question was with the authentication part but does anyone
see any other flaws in my design?
thanks,
Brent
be a must. I am starting to develop a web service that will be used for
winform applications either from the local lan or from the internet. Also, i
might use the same thing in an asp.net web site. I will pass a dataset to
the client from the web service where they can modify the data and send the
dataset back to the server for insert/update/deletes. I might also add some
methods so you don't have to return allow you to return just one entry from
the database instead of everything. Also, allow you to update one entry
without setting the entire dataset back over the line. I am probably going
to use the cryptogaphy functions allong with TripleDES to encrypt
everything. I don't think it will be to bad. What is how do i handle
authentication since there will be no state? When the user enters the
application they will be prompted for a password. This will check their
password compared to a hash that i will store on the DB. Ok everything is
fine and dandy but now how do i make sure they are authenticated before they
call any methods on the web service? I don't want any unauthenticated users
calling this web service. Do i need to pass there password every time? I
know i could probably use SSL but i don't want to overhead of SSL if its
preventable.
One a side note, i contemplated using http based remoting instead of web
services but i already have iis running on my server and i don't want to
have to open another port on my firewall for the remoting piece. I wanted to
still be able to use port 80.
I guess my main question was with the authentication part but does anyone
see any other flaws in my design?
thanks,
Brent