Gridview配置数据源--信任服务器证书

news2024/11/26 22:30:16

目录

  • 背景
  • 过程
    • Gridview配置数据源
      • GridView与数据源:
      • 数据库连接与安全:
      • 信任服务器证书:
      • 配置信任服务器证书:
      • 注意事项:
    • 生成连接字符串
    • 程序运行报错
    • 问题解决
  • 总结

背景

Gridview配置数据源之后,程序报错
在这里插入图片描述

过程

Gridview配置数据源

信任服务器证书,这里如果不勾选,会报错
在这里插入图片描述

GridView与数据源:

    GridView是Web开发中常用的数据展示控件,它可以从多种数据源(如数据库、XML文件、对象集合等)中获取数据,并以表格形式显示。
    配置数据源是指将GridView与特定的数据提供程序(如SqlDataSource、ObjectDataSource等)或数据源连接字符串相关联的过程。

数据库连接与安全:

    当GridView通过数据库连接字符串连接到数据库时,可能会涉及到网络安全问题。
    在使用SSL/TLS加密的数据库连接中,客户端(如Web应用程序)和服务器(如数据库服务器)之间的通信会被加密,以保护敏感数据不被窃取或篡改。

信任服务器证书:

    在建立SSL/TLS加密的数据库连接时,服务器会向客户端提供一个证书,以证明其身份。
    “信任服务器证书”意味着客户端(或更具体地说,是运行GridView的Web应用程序)接受并信任服务器提供的证书。
    如果证书是有效的(即由受信任的证书颁发机构签发,且未过期、未撤销),则连接可以安全地继续。
    如果证书存在问题(如自签名证书、证书过期、证书颁发机构不受信任等),则客户端可能会拒绝连接,或者要求用户确认是否继续(这取决于具体的配置和应用程序的行为)。

配置信任服务器证书:

    在某些情况下,特别是使用自签名证书或内部证书颁发机构时,可能需要在客户端上配置信任。
    这通常涉及将服务器的证书导入到客户端的信任存储中,或者在连接字符串中指定信任服务器的选项(这取决于具体的数据库驱动程序和连接字符串格式)。

注意事项:

    信任自签名证书或不受信任的证书颁发机构签发的证书可能会带来安全风险,因为它削弱了SSL/TLS加密提供的安全性保证。
    在生产环境中,应尽可能使用由受信任的证书颁发机构签发的证书,并确保证书的有效性和安全性。

生成连接字符串

在这里插入图片描述
    在SQL Server连接字符串中,使用TrustServerCertificate=true来绕过证书验证(但请注意,这会降低安全性)。
    看下这段代码

Server=localhost;Initial Catalog=newsystem;Integrated Security=True;TrustServerCertificate=True;

    Server=localhost:指定服务器的地址,这里是本地主机。
    Initial Catalog=newsystem:指定要连接的数据库名称。
    Integrated Security=True:指定使用Windows身份验证来连接数据库。这意味着不需要提供用户名和密码,而是依赖Windows用户帐户的凭据。
    Trus tServer Certificate=True:指定客户端应该信任服务器的SSL证书,即使该证书不是由受信任的证书颁发机构签发的。这通常用于开发或测试环境,但在生产环境中可能会带来安全风险。

程序运行报错

开头展示的那张图片
在这里插入图片描述
    在生产环境中,应该确保服务器使用由受信任的证书颁发机构签发的有效SSL证书,并将TrustServerCertificate设置为False(或完全省略该参数,因为False是默认值)。

问题解决

项目中,删除这段话
在这里插入图片描述
重新生成解决方案,成功运行
在这里插入图片描述
原因分析:(可能原因–证书问题)

    Gridview配置数据源时的“信任服务器证书”选项:
    在图形化界面工具或向导中,用于配置数据库连接。当勾选这个选项时,它通常会在生成的连接字符串中包含TrustServerCertificate=True。这个参数的作用是告诉客户端(我的应用程序)信任服务器的SSL证书,即使该证书不是由受信任的证书颁发机构签发的。

    服务器可能使用了一个不受客户端信任的SSL证书。
    证书可能已经过期、被撤销或存在其他问题。
    客户端(应用程序)无法验证服务器的身份,因为证书链不完整或证书颁发机构不受信任。
当 TrustServerCertificate=True 被设置时,客户端会忽略证书验证错误,并继续建立连接。删除此参数后,客户端将执行正常的证书验证,如果证书有问题,连接将失败。
删除此参数是遵循最佳安全实践的做法,确保只有使用有效和受信任证书的服务器才能被连接。

总结

    图形化界面中的任何选择都会以某种形式映射到代码层面,无论是配置文件、数据库连接字符串,还是应用程序内部的逻辑。因此,当在图形化界面中做出选择(如勾选“信任服务器证书”)后遇到问题时,需要深入代码层面去寻找问题的根源。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2192895.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端编程艺术(4)---JavaScript进阶(vue前置知识)

目录 1.变量和常量 2.模版字符串 3.对象 4.解构赋值 1.数组的解构 2.对象的解构 5.箭头函数 6.数组和对象的方法 7.扩展运算符 8.Web存储 9.Promise 10.AsyncAwait 11.模块化 1.变量和常量 JavaScript 中的变量和常量是用于存储数据的标识符。变量可以被重新赋值&am…

[Linux] Linux 初识进程地址空间 (进程地址空间第一弹)

标题:[Linux] Linux初识进程地址空间 个人主页水墨不写bug (图片来源于AI) 目录 一、什么是进程地址空间 二、为什么父子进程相同地址的变量的值不同 三、初识虚拟地址、页表 一、什么是进程地址空间 其实,在很久之前&#xf…

数据结构之树(3)

一、森林和树的转换 重要! 树->二叉树 由于孩子兄弟链式存储和二叉树链式存储本质相同,故树可转换为二叉树。 森林->二叉树 森林:m棵互不相交的树的集合 森林->树 树->二叉树 森林中各个树的根节点之间视为兄弟关系 二、树…

ORB-SLAM复现时遇到的问题(复现失败,切莫当做教程)

背景 本人的环境:使用ubuntu20.04,opencv4 问题 进行Build DBoW2. Go into Thirdparty/DBoW2/ and execute:时,运行make时出错 我安装的opencv4,在 OpenCV 3 和更高版本中,头文件的路径可能已更改。例如&#xff0…

科普篇--- 什么是硬件在环测试?

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不…

线程安全的单例模式 | 可重入 | 线程安全 |死锁(理论)

🌈个人主页: 南桥几晴秋 🌈C专栏: 南桥谈C 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据…

业务封装与映射 -- OTUk/ODUk/OPUk比特速率和容量

介绍OTUk,ODUk,OPUk,OTUCn,ODUCn,OPUCn的比特速率和容量。 OTN支持超100 Gbit/s,100 Gbit/s,40 Gbit/s,10 Gbit/s,2.5 Gbit/s,1.25 Gbit/s等多种线路速率。 …

SAP MM学习笔记 - 豆知识10 - OMSY 初期化会计期间,ABAP调用MMPV/MMRV来批量更新会计期间(TODO)

之前用MMRV,MMPV来一次一个月来修改会计期间。 如果是老的测试机,可能是10几年前的,一次1个月,更新到当前期间,搞个100多次,手都抖。 SAP MM学习笔记 - 错误 M7053 - Posting only possible in periods 2…

Python水循环标准化对比算法实现

🎯要点 算法区分不同水循环数据类型:地下水、河水、降水、气温和其他,并使用相应标准化降水指数、标准化地下水指数、标准化河流水位指数和标准化降水蒸散指数。绘制和计算特定的时间序列比较统计学相关性。使用相关矩阵可视化集水区和显示空…

每日OJ题_牛客_最长无重复子数组_滑动窗口_C++_Java

目录 牛客_最长无重复子数组_滑动窗口 题目解析 C代码1暴力 C代码2滑动窗口 Java代码滑动窗口 牛客_最长无重复子数组_滑动窗口 最长无重复子数组_牛客题霸_牛客网 (nowcoder.com) 描述: 给定一个长度为n的数组arr,返回arr的最长无重复元素子数组…

【Linux】Ubuntu20.04上使用RabbitVCS的图形化SVN

文章目录 1、RabbitVCS1.1、RabbitVCS 介绍1.2、RabbitVCS 主要功能1.3、Ubuntu下 TortoiseSVN 替代者 2、安装2.1、命令安装2.2、安装使用2.3、使用权限 3、解决SVN无法保存密码问题3.1、问题描述3.2、解决方法 1、RabbitVCS 1.1、RabbitVCS 介绍 它是一款Linux系统下的图形…

jsencrypt实现js加密的另外一种方式(使用node-jsencrypt库)

在上一篇文章中,实现了使用jsencrypt模块RSA加密实现。 参考链接:记录使用crypto-js、jsencrypt实现js加密的方法-CSDN博客 在实现的过程中,会提示出错:ReferenceError: window is not defined ,而且需要修改jsencry…

网站建设开发方法

在这个充满激烈竞争的网络世界,如何通过网站建设开发,打造一个引人注目、功能强大的在线空间,成为了许多人关注的焦点。 1. 初衷与定位: 在进行网站建设开发之前,首先需要明确网站的初衷和定位。是作为企业的官方展示…

AcWing 662:点的坐标 ← 结构体 or 三目运算符

【题目来源】https://www.acwing.com/problem/content/664/【题目描述】 给定两个保留一位小数的浮点数 X,Y,用来表示一个点的横纵坐标。 请你判断该点在坐标系中的位置。 【输入格式】 共一行,包含两个浮点数 X,Y,表示点的横纵坐标。【输出格…

ElasticSearch备考 -- Async search

一、题目 通过异步方式查询earthquakes索引下Magnitude大于5的数据 二、思考 正常的查询大家可能会用的多一点,这种异步查询为数据量比较大的查询在后台执行,不用同步等待结果,待执行完成在获取结果。 三、解题 Step 1、准备基础数据 # D…

【CV】带你跑通过线检测项目unbox_yolov5_deepsort_counting

文章目录 🌕运行结果🌕我的配置🌕下载项目🌕安装依赖🌙创建激活虚拟环境🌙pip install -r requirements.txt 🌕确保有参数ckpt.t7和测试数据集test.mp4🌕运行🌙出现报错T…

Leecode热题100-560.和为k的子数组

给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1: 输入:nums [1,1,1], k 2 输出:2示例 2: 输入:nums [1,2,3], k…

k8s实战-1

k8s实战-1 一、资源创建方式1.命令行2.yaml 二、命名空间三、Pod总结 一、资源创建方式 1.命令行 就是直接通过命令的方式创建,比如我要创建namespace, kubectl create namespace hello删除: kubectl delete -f hello2.yaml 简单来说&am…