2020-09
2020-09-01
ConcurrentDictionary 比 Dictionary 安全性更高
ConcurrentDictionary可以使用AddOrUpdate来添加/修改键值对
2.session和cookie的区别
1.session运行在服务器,cookie运行在客户端浏览器
2.cookie不能跨域访问
3.cookie分为会话cookie和持久cookie,若不设置过期时间,则认为是会话cookie,生命周期在浏览器会话期间,关闭就清除,持久cookie数据会存储到硬盘中
4.用户访问服务器时,会建立session,服务器通过sessionid来识别用户身份,sessionid保存在cookie中
5.session 比cookie安全,但是当访问较多时,session会占用服务器性能
3,。 sql server
@ 表示局部变量
@@du 表示全局变量
# 表示本地临时表的名称,zhi以单个数字符号打头;它们dao仅对当前的用户连接是可见的
## 表示全局临时表
ASP.NET authentication安全验证
1.ASP.NET的安全认证,共有“Windows”“Forms”“Passport”“None”四种验证模式。,“Windows”与“None”没有起到保护的作用,不推荐使用;“Passport”我又没用过,唉……所以我只好讲讲“Forms”认证了。,使用VS创建项目,默认的是none,这里我们讨论'Forms'认证
1.Web.config
将<authentication mode="None" />改为
<authentication mode="Forms">
<forms loginUrl="~/Login" />
</authentication>
2.登录验证成功后,保存用户名,false表示不创建永久的cookie
System.Web.Security.FormsAuthentication.SetAuthCookie(this.Txt_UserName.Text,false);
3.登录退出后,从浏览器删除Forms身份验证票证
System.Web.Security.FormsAuthentication.SignOut();
4.如何判断验证与否及获取验证后的用户信息
User.Identity 还有两个属性AuthenticationType(验证类型)与 Name(用户名称) ,大家要注意的是 Name 属性,此处的User.Identity.Name将得到,验证通过(RedirectFromLoginPage 或SetAuthCookie)时,我们带入的第一个参数 this.Txt_UserName.Text
4.Web.config 的作用范围
新建项目时, VS.Net 会在项目根目录建立一个内容固定的 Web.config。除了在项目根目录,你还可以在任一目录下建立 Web.config关于 Web.config 设置的作用范围,记住以下两点:
1、 Web.config 的设置将作用于所在目录的所有文件及其子目录下的所有东东(继承:子随父姓)
2、 子目录下的 Web.config 设置将覆盖由父目录继承下来的设置(覆盖:县官不如现管)