位置: 编程技术 - 正文

T-SQL问题解决集锦 数据加解密全集(sql基础问题)

编辑:rootadmin
以下代码已经在SQLServer上的示例数据库测试通过问题一:如何为数据进行加密与解密,避免使用者窃取机密数据? 对于一些敏感数据,如密码、卡号,一般不能使用正常数值来存储。否则会有安全隐患。以往的加密解密都有前端应用程序来辅助完成。而数据库一般只能加密不能解密。 从开始提供了数据库层面的数据加密与解密。其实现方式主要有以下: 1、 利用CONVERT改变编码方式: 利用该函数把文字或数据转换成VARBINARY。但该方式不具备保护数据的能力,仅避免浏览数据的过程中能直接看到敏感数据的作用。 2、 利用对称密钥: 搭配EncryptByKey进行数据加密。使用DecryptByKey函数进行解密。这种方式比较适合大数据量。因为对称密钥的过程好用资源较少。 3、 利用非对称密钥: 搭配EncryptByAsymKey进行数据加密。使用DecryptByAsymKey函数进行解密。用于更高安全级别的加解密数据。因为耗用资源叫多。 4、 利用凭证的方式: 搭配EncryptByCert进行加密和DecryptByCert函数进行解密。比较类似非对称密钥。 5、 利用密码短语方式: 搭配EncryptBypassPhrase进行加密,使用DecryptByPassPhrase函数来解密。可以使用有意义的短语或其他数据行,当成加密、解密的关键字,比较适合一般的数据加解密。 案例: 1、 Convert方式: 2、对称密钥: 3、非对称密钥: 4、证书加密: 5、短语加密: 问题二:如何保护数据库对象定义,避免发生过渡暴露敏感信息? 一般的保护措施是在创建对象时使用WITH ENCRYPTION来把对象加密,这样就无法查看定义。但是问题是对于维护来说就成了问题,而且备份还原时这部分对象是会丢失的。 其中一个解决方法是把定义语句放到对象的【扩展属性】中保存,这样能解决上面的问题。 下面举个例子: 问题三、如何让指定用户可以对数据表进行Truncate操作? Truncate在对大表全删除操作时,会明显比Delete语句更快更有效,但是因为它不需要存放日志,并且一定是全表删除,所以造成数据的不可恢复性。也说明了它的危险性。 但是,执行Truncate需要有表拥有者、系统管理员、db_owner、db_ddladmin这些里面的其中一种高权限角色才能执行。 对此,可以使用之后的EXECUTE AS表达式来实现权限内容的切换: 1. 切换登录:EXECUTE AS LOGIN 2. 切换用户:EXECUTE AS USER 3. 切换执行权限:EXECUTE AS owner/'user name',利用高用户权限来执行作业。此步骤可以在低权限实体下执行高权限操作,也能避免安全性漏洞。 另外,只有EXECUTE AS Caller可以跨数据库执行,而其他方式进行的权限切换仅限制于本数据库。 注意:执行EXECUTE AS USER模拟使用者切换时,需要先获得被模拟用户的授权。 可以使用REVERT来还原执行内容前的原始身份。 问题四、如何获取前端连接的信息,如IP地址和计算机名? 对于DBA工作或者某些特殊的应用程序,需要获取前端应用的系统信息。而这些信息如果用用户表来存储,代价会比直接读取数据库系统信息要大。所以建议适当读取系统表: 在连接数据库的session期间,都可以在master数据库中找到session信息,但是从开始,有了很多DMV/DMF来实现这些功能: l Master.dbo.sysprocesses或者master.sys.sysprocesses:提供执行阶段的SPID、计算机名、应用程序名等。 l Sys.dm_exec_sessions:记录每个session的基本信息,包括id、计算机名、程序名、应用程序名等 l Sys.dm_exec_connections:记录每个连接到SQLServer实例的前端信息,包括网络位置、连接时间等等。 l select client_net_address 'Client IP Address',local_net_address 'SQL ServerIP Address',* l from sys.dm_exec_connections l where session_id=@@spid 在以后,建议使用DMV取代系统表。问题五、如何避免SQL注入的攻击? 对于数据库应用程序,无论是那种DBMS,SQL注入都是一大隐患。 要避免SQL注入,应该最起码做到以下几点: 1. 检查输入的数据,应用程序不要相信用户输入的数据,必须经过检验后才能输入数据库。要排除%、--等特殊符号。 2. 避免果度暴露错误信息。建议可以转换成Windows事件或者是转换成应用程序内部错误信息。 3. 使用参数化查询或者存储过程 注意: 动态SQL是导致SQL注入的主凶 作者: 黄钊吉

推荐整理分享T-SQL问题解决集锦 数据加解密全集(sql基础问题),希望有所帮助,仅作参考,欢迎阅读内容。

T-SQL问题解决集锦 数据加解密全集(sql基础问题)

文章相关热门搜索词:sql 问题,sql基本问题,sql常见问题,sql 问题,sql解题思路,sql基础问题,sql 问题,sql 问题,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL Server 日期相关资料详细介绍 一、日期类型:对于SQLServer来说(因为甚至已经稍微有被淘汰的迹象,所以在此不作过多说明,加上自己工作使用的是R2。所以不保证以前

设置SQLServer数据库中某些表为只读的多种方法分享 一般情况下会有几种情况需要你把数据库设为只读:1.Insert,Update,Delete触发器2.Check约束和Delete触发器3.设置数据库为只读4.把表放到只读文件组中5.拒绝

SQL Server错误代码大全及解释(留着备用) SQLSTATESQLSERVER驱动程序错误描述HY所有绑定列都是只读的。必须是可升级的列,以使用SQLSetPos或SQLBulkOperations更改或插入行。HY已检测到一个旧netlib(%s

标签: sql基础问题

本文链接地址:https://www.jiuchutong.com/biancheng/348461.html 转载请保留说明!

上一篇:MSSQL 基本语法及实例操作语句(mysql sqlserver语法)

下一篇:SQL Server 日期相关资料详细介绍(sqlserver日期类型数据)

  • 城镇土地使用税减免税政策
  • 企业清算过程中发生的费用
  • 一般纳税人商品混凝土税率
  • 其他应收款在现金流量表怎么填
  • 个税申报错了并且已经缴款怎么修改
  • 广告制作税目
  • 纳税总额是否包含增值税进项
  • 在企业所得税中增值税可以扣除吗
  • 商贸企业出口退税计算公式
  • 总公司可以给分公司买车吗
  • 发票开的是推广服务费计入什么费用?
  • 初期厂房监理费怎么做账?
  • 合并报表编织原则
  • 营改增之后餐饮业的税收政策
  • 摊销商标使用权的会计科目
  • 个体工商户税种认定的税目可以改吗
  • 契税和印花税入哪个科目
  • 租赁收入账务处理
  • 作废章盖在哪个位置
  • 海关新增成交方式exw条款,如何退税?
  • 以前年度少计提收入
  • 戴尔开启vt教程
  • 配件进出库账目怎么做
  • 期间费用包括哪几个科目
  • 银行承兑汇票质押率90%
  • 尚未支付的货款属于什么会计要素
  • 酒店布草间有摄像头吗
  • 结转到生产成本的科目
  • Win11怎么设置开机跳过密码
  • window11正式版什么时候出来
  • google谷歌浏览器下载电脑版
  • uniapp封装组件,多了一层
  • 应收票据计提利息
  • php面向对象的三大特征
  • YOLOv5|YOLOv7|YOLOv8改各种IoU损失函数:YOLOv8涨点Trick,改进添加SIoU损失函数、EIoU损失函数、GIoU损失函数、α-IoU损失函数
  • 企业盘盈的固定资产其核算的会计科目是
  • 短期投资的入账成本
  • 个人能去税务局开劳务费发票吗
  • 小微企业具体指
  • 拆迁支出包括哪些
  • 资产负债表日后至财务报告批准报出日之间
  • 挂靠设计公司费用标准怎么记账
  • 企业开户行信息是什么意思
  • 故障的机器修好多少钱
  • 库存商品总分类账范本
  • 特殊收入如何计税
  • 买一赠一是什么促销方式
  • 当月购进原材料取得税控专用发票
  • 丁字账户例题及解析
  • 互联网金融理财产品的优势
  • 工商营业执照变更网上怎么操作
  • 毁损的原材料怎么处理
  • 上个月库存没用完的下个月怎么计算
  • 电子税务局自然人扣缴客户端
  • 建筑公司直接把钱打到个人账户怎么走账
  • 制造费用月末需要结转吗
  • 产品成本核算方法受那些因素影响
  • xp系统怎么修改盘符
  • win10 电脑
  • win8显示屏亮度调节
  • win7系统aero主题变成黑色
  • win 10系统怎么查看网络连接
  • Extjs4 Treegrid 使用心得分享(经验篇)
  • javascript中的原型和原型链
  • shell循环结构
  • shell判断文件
  • nodejs+ts
  • 简单使用23 款华为s E可以吗
  • python登陆代码
  • jquery插件使用
  • 原始凭证审核会计科目吗
  • 国家税务总局定额发票查验平台官网
  • 武汉税务证怎么网上申请
  • 开票税额超出1万怎么办
  • 地税可以补开以前发票吗
  • 上海《居住登记凭证》
  • 国家税务总局公告2017年第21号
  • 云南省地方税务局官网
  • 宁波税务干部学校
  • 国税和地税在一起吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设