(3)、窗体身份验证
这种验证方式使用客户端重定向功能,将未通过身份验证的用户转发到特定的登录窗体,要求用户输入其凭据信息(通常是用户名和密码)。这些凭据信息被验证后,系统生成一个身份验证票证(ticket)并将其返回客户端。身份验证票证可在用户的会话期间文护用户的身份标识信息,以及用户所属的角色列表(可选)。
(4)、None
使用这种身份验证模式,表示你不希望对用户进行验证,或是采用自定义的身份验证协议。
对于 Windows 身份验证,遵循以下步骤:
WindowsAuthenticationModule 使用从 IIS 传递到 ASP.NET 的 Windows 访问令牌创建一个 windowsprincipal 对象。该令牌包装在 httpcontext 类的 workerrequest 属性中。引发 authenticaterequest 事件时,windowsauthenticationmodule和httpcontext 类检索该令牌并创建 windowsprincipal 对象。httpcontext.user 用该 windowsprincipal 对象进行设置,它表示所有经过身份验证的模块和 ASP.NET 页的经过身份验证的用户的安全上下文。
2、数据库连接字符串
Webconfig里的连接配置:
<appSettings>
<add key="FileUplodePath" value="Upload"/>
<add key="strcon" value="Data Source=(local);Initial Catalog=PCM1;User ID=sa;Password=123"></add>
</appSettings>
数据库联接对象Connection类有四种:SqlConnection,OleDbConnection,OdbcConnection和OracleConnection。对应不同的数据库SqlConnection类的对象连接SQL Server数据库; OracleConnection 类的对象连接Oracle数据库; OleDbConnection类的对象连接支持OLE DB的数据库,如Access;而OdbcConnection类的对象连接任何支持ODBC的数据库。使用不同的Connection对象需要导入不同的命名空间:OleDbConnection的命名空间为System.Data.OleDb;SqlConnection的命名空间为System.Data.SqlClient;OdbcConnection的命名空间为System.Data.Odbc;OracleConnection的命名空间为System.Data.OracleClinet。
使用SqlConnection对象连接SQL Server数据库时,我们就可以使用如下两种方式连接数据库,即采用集成的Windows验证和使用Sql Server身份验证进行数据库的登录。
集成的Windows身份验证语法范例
<add key="strcon" value=" server=localhost;database=PCM;
integrated security=SSPI"">
程序代码说明 :在上述语法范例的程序代码中,我们设置了一个针对Sql Server数据库的连接字符串。其中server表示运行Sql Server的计算机名,ASP.NET程序和数据库系统是位于同一台计算机的,所以我们可以用localhost取代当前的计算机名。 database表示所使用的数据库名,这里设置为Sql Server我的数据库名PCM。由于我们希望采用集成的Windows验证方式,所以设置 integrated security为SSPI即可。
采用 Sql Server身份验证 的语法范例
<add key="strcon" value="Data Source=(local);Initial Catalog=PCM1;User ID=sa;Password=123">
程序代码说明 :在上述语法范例的程序代码中,采用了使用已知的用户名和密码验证进行数据库的登录。uid为指定的数据库用户名,pwd为指定的用户口令。为了安全起见,一般不要在代码中包括用户名和口令,你可以采用前面的集成的Windows验证方式或者对Web.Config文件中的连接字符串加密的方式提高程序的安全性。
3、页面调用数据库连接
public SqlConnection GetConnection()
{
string strcon = System.Configuration.ConfigurationManager.AppSettings["strcon"];
SqlConnection myconn = new SqlConnection(strcon);
return myconn;
}
4、数据库操作类
public DataTable Getdatatable(string s)
{
SqlConnection strcon = GetConnection();
strcon.Open();
SqlDataAdapter sda = new SqlDataAdapter(s, strcon);
DataSet ds = new DataSet();
sda.Fill(ds);
DataTable dt = new DataTable();
dt = ds.Tables[0];
return dt;
}
public void Insert(string s)
{
SqlConnection strcon = GetConnection();
strcon.Open();
SqlCommand scd = new SqlCommand(s,strcon);
scd.ExecuteNonQuery();
<< 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] ... 下一页 >>