我要求构建一个有点像OpenId的身份验证的网站,但我不需要使用Facebook或Google的信誉,而是需要使用我们软件供应商维护的系统中的凭据来验证用户身份。不幸的是,他们没有提供任何API(根本没有),他们没有专业知识来建立一个。由于情况有点绝望,我的解决方案是有一个常规的登录页面,在用户输入他们的信用卡后,我向供应商登录页面执行http帖子,例如:
using (var wb = new WebClient())
{
var data = new NameValueCollection();
data["username"] = "myUser";
data["password"] = "myPassword";
var response = wb.UploadValues(url, "POST", data);
}
然后我将从登录页面抓取userId。从而验证用户。 我想我要问的是理智检查,这种方法是不是太不安全了?
答案 0 :(得分:1)
是 - 您以纯文本形式发送用户数据。您必须使用SSL,否则用户迟早会妥协。