Reputation: 19010
Background:** We have an ASP.NET web app which exposes simple ASMX web services such as:
string GetOrders(string
userName,string password,DateTime
orderDate)
: Return an XML string of
customer orders based on the user
(customer).
void UpdateOrders(string userName,
string password, Guid orderGuid,
string orderXml)
: Update an order's
data (from the XML Payload) based on
the order's GUID.
Example:
WebServiceClient proxy = new WebServiceClient();
string xmlData = proxy.GetOrders("james","password",DateTime.Today);
My question is:
Upvotes: 0
Views: 565
Reputation: 965
Here is a similar thread covering some of these issues.
In general, even with a SSL connection, don't send passwords in clear text. A challenge response is a good way to secure your password, this is what many banks do as well. Basically send the user a timestamp or something similar that would vary depending on when you call the service. Then have the user respond with a hash of his password + the timestamp, this way even if the password hash is intercepted it cannot be used to access your service, since next time it is called the hash would need to be different.
Upvotes: 2
Reputation: 29745
How safe this is for you depends on the nature of the data and what is acceptable to you.
Upvotes: 0