我使用Identity + Owin进行身份验证的简单ASP.net Webforms应用程序。基于此教程:
我还添加了一个webservice作为下面给出的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using Newtonsoft.Json;
namespace webservice_1
{
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public DataSet getRequests()
{
DataSet ds = new DataSet();
string cs = ConfigurationManager.ConnectionStrings["IBS_5"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand sqlComm = new SqlCommand("spSelRequests", con);
sqlComm.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = sqlComm;
da.Fill(ds);
return ds;
}
}
[WebMethod]
public string getRqsts()
{
DataSet ds = new DataSet();
string cs = ConfigurationManager.ConnectionStrings["IBS_5"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand sqlComm = new SqlCommand("spSelRequests", con);
sqlComm.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = sqlComm;
da.Fill(ds);
return JsonConvert.SerializeObject(ds, Newtonsoft.Json.Formatting.Indented);
}
}
}
}
一切都很好。我只想将身份验证添加到Web服务。目前可以直接调用webservice,没有安全性。
身份验证适用于网页。
webservices将用于android / IOS应用程序。
我无法理解如何在此提供身份验证。另外,我应该如何管理webservice的cookie和会话。
注意:我不理解MVC ......所以请考虑一下。