分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

ADO.NET之注入式攻击

发布时间:2023-09-06 02:17责任编辑:傅花花关键词:.NET

关于Sql注入,经典的注入语句是‘ or 1=1--     以下说说如何最大限度的避免注入问题。

一.SQL参数用法1

1.思维导图

属性 
ParameterName取得或設定 SqlParameter 的名稱。
Value取得或設定參數的值。
SqlDbType取得或設定參數的 SqlDbType
Size取得或設定資料行中資料的最大大小 (以位元組為單位)。

2.示例代码

1 SqlParameter sqlParameter = new SqlParameter(); ????????????//声明并实例化SQL参数;2 sqlParameter.ParameterName = "@No"; ????????????????????????//设置SQL参数的名称;3 sqlParameter.Value = this.txb_UserNo.Text.Trim(); ??????????//设置SQL参数的长度;4 sqlParameter.SqlDbType = SqlDbType.Char; ???????????????????//设置SQL参数对应的SQL Server数据类型;5 sqlParameter.Size = 10; ????????????????????????????????????//设置SQL参数的长度;6 sqlCommand.Parameters.Add(sqlParameter); ????

显然,Add方法在添加多个SqlParameter时不方便

二.SQL参数用法2

1.示例代码

1 sqlCommand.Parameters.AddWithValue("@Password", this.txb_Password.Text.Trim()); ??????//直接调用方法AddWithValue向SQL命令的参数集合添加参数的名称、值;2 sqlCommand.Parameters["@Password"].SqlDbType = SqlDbType.VarChar; ????????????????????//通过参数名称访问SQL参数,并将密码参数的类型设为变长字符串;3 ???????//SQL参数能自动识别类型;若参数值为字符串,则类型自动设为NVARCHAR,且可在执行时自动转换;但对于相同密码,VARCHAR/NVARCHAR类型所获得的散列值不同,故需手动将SQL参数类型统一设为VARCHAR;

ADO.NET之注入式攻击

原文地址:https://www.cnblogs.com/lidie-/p/9742272.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved