- 博客(120)
- 收藏
- 关注
原创 Shiro为什么要先认证后授权
我的理解是,首先Shiro的安全机制就像一所高中一样,而进入学校这需要进行认证,认证标识则为学生卡,当学生进入学校时只需要刷卡认证即可进入学校,而一些非法人员,则无法通过。授权,就可以理解为是校长在分发身份,对于一所学校来说,学生众多校长不可能全部认识,所以如果直接授权的话,可能会出现安全隐患。而Shiro不先进行验证的话,可能会使一些非法人员通过非法手段直接进入后台,这可能会导致十分严重的安全事故。作为十分出色的安全框架Shiro,他的正常使用流程是,验证,授权,分配资源。但为什么要先认证再授权呢?
2023-06-06 10:07:19
254
原创 已知一个C类网络地址为192.189.25.0,现要将其划为不同的子网,其要求是:每个子网的主机不超过25台,则最少能分多少个子网?子网掩码是?
计算得到25台主机所需的W值为4,也就是说,拥有4个连续的可用主机号位可以为一台子网提供25个IP地址。假设每个子网拥有n台主机,则它的主机号占用的二进制位数为W=log2(n+2)-1。其中,+2是加上网络号和广播地址,-1是因为最后一个二进制位要保留给主机,不能使用。根据子网划分的要求,需要将 C 类网络地址 192.189.25.0 划分成多个子网,每个子网的主机数量不超过25台。为了满足主机不超过25台的要求,我们需要借助可用的主机号位来组合生成新的子网。子网4:192.189。
2023-05-18 16:06:52
620
原创 什么是超网?
在互联网中,路由器需要维护到达其他网络的路由信息。超网的作用就是通过将多个较小的网络地址组合成一个较大的网络地址,从而减少路由器中需要维护的路由信息数量,简化路由器配置和管理,并提高路由器的性能和可靠性。通过应用超网技术,可以将这些小的网络地址组合成一个大的网络地址,然后在ISP路由器上使用这个大的网络地址来代替包含所有小的网络地址的路由表,从而减少路由表的条目数和路由器的计算量。超网是把几个连续的网络地址按照一定的规则合并成一个更大的网络地址,形成一个较大的路由聚合,从而实现路由表规模的缩小。
2023-05-18 16:06:12
513
原创 什么是VLSM?
例如,如果在网络中需要同时支持很多的服务器和仅需几台客户端设备,则可以对这些两种设备分别分配具有不同子网掩码长度的子网,这样可以最大化利用IP地址空间。这种灵活的规划技术通常被用于大型企业网络和ISP网络,以优化网络资源并最大限度地提高网络性能。VLSM是"可变长度子网掩码"的缩写,是一种网络规划技术,它允许在一个IP地址空间中使用不同的子网掩码。传统的子网掩码规划方法要求所有子网使用相同的子网掩码,无论其大小是否相同。这使得网络管理员能更有效地利用可用的IP地址,并帮助他们更好地规划和管理网络。
2023-05-18 16:05:37
1436
原创 为什么要划分子网掩码?
在计算机网络中,划分子网掩码可以帮助我们把一个大的网络地址空间划分成多个小的子网。提高网络性能:将一个大型局域网划分为多个子网可以降低广播风暴和碰撞域,从而提高网络的性能和可靠性。更好地利用IP地址:通过划分子网,可以更好地利用给定的IP地址空间,从而减少了对IP地址的浪费。方便网络管理:划分子网可以让网络管理员更轻松地管理网络流量和配置网络设备。提高网络安全性:划分子网可以增强网络的安全性,使其更难以攻击和入侵。
2023-05-18 16:05:05
218
原创 Windows的权限管理方式?
可以通过设置权限级别来限制某个用户或组的范围内可执行的操作。1. 用户账户控制(UAC)- 用户账户控制允许管理员以标准用户身份运行,当执行需要管理员权限的任务时,会提示输入管理员密码进行确认。它用于确定哪些用户/组具有访问该对象的权限,并指定何种操作(读取、写入、删除等)这些用户/组可以执行。2. 组策略 - 组策略可以对一组计算机或用户应用统一的政策,例如用户访问的网络共享和应用程序的安装和配置。5. 用户账户 - Windows在每个用户登录时会创建一个用户账户,包括基本的权限分配。
2023-05-18 16:04:11
1239
原创 4.Windows的文件管理方式?
3. 使用命令行:Windows还支持使用命令行工具(如cmd.exe或Powershell)来执行文件管理任务。这种方法可以更快地执行某些任务,例如重命名多个文件或在多个文件夹之间移动文件。1. 使用“资源管理器”(Explorer):在Windows中,可以使用资源管理器来管理文件和文件夹。通过在文件浏览窗口中单击鼠标,在树形结构上展开文件夹并在右侧的窗格中查看其内容。2. 使用快捷键:有许多快捷键可用于文件管理。例如,通过按住Ctrl和C复制所选文件,然后按住Ctrl和V将其粘贴到目标文件夹中。
2023-05-18 16:02:23
749
原创 2.Windows内置三个配置区域?如何打开?
控制面板是 Windows 中管理应用程序和硬件设备的中心位置,您可以使用控制面板来更改各种设置,包括网络、音频、安全性、用户帐户等。打开方式:可以通过搜索栏输入“控制面板”打开,或者在“此电脑”中单击右键,选择“属性”,然后在左侧窗格中选择“控制面板”。打开方式:可以按下快捷键 Win + I 来打开设置应用,或点击任务栏右侧的系统托盘中的日期/时间,再点击“设置”。打开方式:可以通过搜索栏中输入“管理工具”打开,或者在控制面板中找到“管理工具”。管理工具(Management Tools)
2023-05-18 16:02:20
235
原创 Win7,win10,win11 对比?
Windows 10 的支持期将于 2025 年结束,这意味着使用者可以得到紧急更新和维修来保证系统安全,并非可用时间。而 Windows 11 进一步加强了安全功能,例如硬件安全模块(TPM2.0)和面向企业的多层次安全防护等。Windows 10 相对于 Windows 7 来说,更快捷和高效。1. 使用“资源管理器”(Explorer):在Windows中,可以使用资源管理器来管理文件和文件夹。例如,通过按住Ctrl和C复制所选文件,然后按住Ctrl和V将其粘贴到目标文件夹中。
2023-05-18 16:01:52
1566
原创 1.重启,关机,注销,切换用户有什么区别?
如果多个用户共享一台计算机,则可以同步进行的操作。切换用户时,当前用户的账户将保持登录状态,但转到其他用户的账户。该用户可以在其自己的帐户中使用计算机,而原始用户的所有打开和未保存的活动都将保持不变。当您注销时,您的帐户会注销并关闭当前打开的会话,但计算机仍然处于运行状态。注销后,您需要再次登录才能使用您的帐户。注销对其他用户不会有影响,他们可以在其自己的帐户中继续使用计算机。当你选择重启时,计算机会关闭所有正在运行的程序和进程,并重新启动系统。当您选择关机时,系统会提示您选择是否先保存未保存的工作。
2023-05-18 16:01:29
1437
原创 Keras神经网络模型训练
神经网络是一个参数化的模型,参数的选择直接影响到模型的性能。Keras中的神经网络模型通常通过反向传播算法和梯度下降法等优化算法来调整参数,以最小化预定义的损失函数。然而,这些方法可能会陷入局部最优解,导致模型性能不佳。因此,我们需要寻找一种能够充分探索解空间,找到全局最优解的优化算法。Keras神经网络模型训练。
2023-05-17 17:38:38
173
原创 神经网络de
神经网络是机器学习领域中的一个重要研究方向,而Keras作为一个易用且高效的神经网络模型库,被广泛应用于各种复杂的问题求解上。然而,神经网络的训练通常依赖于梯度下降法等确定性优化算法,这些方法可能会陷入局部最优解,导致模型性能不佳。为此,我们尝试引入粒子群优化(Particle Swarm Optimization,PSO)算法作为Keras神经网络模型的训练算法,以期提高模型的优化能力和性能。
2023-05-17 17:32:14
101
原创 更改linux动态ip为静态
GATEWAY需要到虚拟机中–编辑–虚拟网络编辑器–NAT模式–NAT设置–网关IP,如我的看到是192.168.40.2。别的192.168.xx也跟着改成192.168.40,IPADDR喜欢哪个改哪个,但是不能冲突。使用虚拟机,如果是动态ip每次使用连接软件都要先查ip,非常麻烦,使用静态ip可以永久解决。cat ifcfg-ens33或者cat ifcfg-ens32。vi ifcfg-ens33或者vi ifcfg-ens32。2.进入网卡文件目录。//动态网卡dhcp。使用新的静态ip登录。
2023-05-17 17:31:21
367
原创 什么是 Token?什么是 JWT?如何基于Token进行身份验证?
JWT (JSON Web Token) 就是token这种方式的实现,通过这种方式服务器端就不需要保存 Session 数据了,只用在客户端保存服务端返回给客户的 Token 就可以了,token是在服务端生成。请求时,你可以把token它放在 Cookie 里面自动发送,但是这样不能跨域,所以更好的做法是放在 HTTP Header 的 Authorization字段中: Authorization: Bearer Token。而Header 的 Authorization字段 是需要手动指定的。
2023-05-17 17:29:28
177
原创 Shiro架构与功能
Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中;Concurrency:shiro支持多线程应用的并发验证,即如在一个线程中开启另一个线程,能把权限自动传播过去;Caching:缓存,比如用户登录后,其用户信息、拥有的角色/权限不必每次去查,这样可以提高效率;Remember Me:记住我,这个是非常常见的功能,即一次登录后,下次再来的话不用登录了。
2023-05-17 17:27:30
74
原创 协议的定义
二层协议、三层协议、四层协议,都称为封装协议。这些协议本身不会产生数据,这些协议只用定义一个封装报文,这些协议都是为上层的应用转发流量的时候来提供三层封装服务。
2023-05-17 17:26:52
102
原创 iPv4与IPv6的报文格式的区别
二、定义3层地址信息。IPV4定义的就是IPV4地址,IPV6定义的就是IPV6地址。它不用定义数据发送的规则,数据怎么传输是由2层来定义的。因特网协议(Internet Protocol)。一、定义3层报头的格式。让你三层具备哪些功能。先来了解IPv4与IPv6的报文格式的区别。
2023-05-17 17:26:22
211
原创 web服务器
一直以来对这三个概念不甚了解。今天写写心得,详细的看连接How web servers work?。 亮观点:nginx属于web服务器,tomcat属于应用服务器,tomcat也同时是servlet容器。 web服务器:偏向于http静态资源,并发高。比如我们经常使用nginx来访问静态资源。 应用服务器:偏向于动态资源,并发低。比如使用tomcat访问jsp等动态资源。 servlet容器:servlet运行的环境。如tomcat正是一个servlet容器。 为什么我们会困惑呢?就是因为历史大发展所致
2023-05-17 17:25:27
63
原创 IP地址的格式
例:11010010.01001001.10001100.00000110化为十进制为:210.73.140.6。IP地址分为两部分:网络部分(NETWORK)、主机部分(HOST)。2)、一种网络编码,用来确定网络中一个节点。1)、主机唯一的标识,保证主机间正常通信。
2023-05-17 17:24:40
164
原创 JSP九大内置对象
JSP提供了由容器实现和管理的内置对象,也可以称之为隐含对象,由于JSP使用Java作为脚本语言,所以JSP将具有强大的对象处理能力,并且可以动态创建Web页面内容。但Java语法在使用一个对象前,需要先实例化这个对象,这其实是一件比较烦琐的事情。在使用JSP内置对象时,不需要先定义这些对象,直接使用即可。在JSP中一共预先定义了9个这样的对象,分别为request、response、session、application、out、pageContext、config、page和exception。
2023-04-14 08:52:04
101
原创 二.方法重载
方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。调用重载方法时,Java编译器能通过检查调用的方法的参数类型和个数选择一个恰当的方法。方法重载(overload)是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。简单来说可以根据不同的需求使用不同的参数创建对象!
2023-04-12 16:07:05
50
原创 七大设计原则
接口隔离原则:不能强迫用户去依赖那些他们不使用的接口,使用多个接口优于使用一个总接口;B、抽象不应该依赖于细节,细节应该依赖于抽象 C.针对接口编程,不要针对实现编程。里氏替换原则:所有引用基类的地方必须能透明地使用其派生类的对象;迪米特法则:一个软件实体应当尽可能少地与其他实体发生相互作用。单一职责原则:只能让一个类/接口/方法有且仅有一个职责;A、高层模块不应该依赖于低层模块,二者都应该依赖于抽象。组合复用原则:尽量使用组合/聚合,不要使用类继承。开放关闭原则:对扩张开放,对修改封闭;
2023-04-12 16:06:43
44
原创 一.方法覆盖
③覆盖之后的方法不能比原方法拥有更低的访问权限,可以更高(学习了访问控制权限修饰符之后你就明白了);对于返回值类型是引用数据类型来说,重写之后返回值类型可以变的更小但不能变大(但意义不大,开发无意义)④ 覆盖之后的方法不能比原方法抛出更多的异常,可以相同或更少(学习了异常之后就明白了);② 覆盖之后的方法与原方法具有相同的返回值类型、相同的方法名、相同的形式参数列表。① 方法覆盖发生在具有继承关系的父子类之间,这是首要条件;⑤与了多态机制之后相同的返回值类型"可以修改一下吗?
2023-04-12 16:06:32
59
原创 面向对象的三大特征
封装指一个类可以有一些私有属性和方法,可以将一个问题的解决方法封装起来,对外只提供一部分接口,通过调用接口可以解决问题但是外部并不知道具体解决方法是什么。一个类可以通过继承得到另一个类的非私有属性和方法,这样被继承的类就的属性和方法就可以被复用。同一个父类实例化出来的子对象,通过调用同一个方法,且可以得到不相同的结果,这就是多态。
2023-04-12 16:06:02
44
原创 什么是OOP思想?
Python 和 Ruby 是最近才出现的语言,在开发时完全采用了 OOP 的思想,而流行的 Perl 脚本语言从版本5开始也慢慢地加入了新的面向对象的功能组件。用组件代替“现实”上的实体成为 JavaScript(ECMAScript) 得以流行的原因,有论证表明对组件进行适当的组合就可以在英特网上代替 HTML 和 XML 的文档对象模型(DOM)。多态性 - 组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。核心思想:封装,继承,多态.
2023-04-12 16:05:23
190
原创 List和Set区别?
List和Set都是常用的集合接口,可以通过这两个接口去实现集合类。List可以实现的集合类有:ArrayList、LinkedList和Vector。但是如果是特殊类型,比如对象、数组、集合,则需要通过比较器对象自定义排序规则。它是一种无序的,线程不安全,运行效率高,常用的集合类。Vector是通过数组实现的,所以查询块、增删慢。(现在已经不怎么使用了)它是一种线程不安全、效率高的集合类。List集合类中的元素是可以重复,存在下标,元素是有顺序。Set集合类中的元素是唯一的,不存在下标,元素是无序的。
2023-04-12 16:03:17
234
原创 三种常用循环
之后执行表达式3,更新循环变量;首先我们要判断循环条件,如果循环条件为真即(true)我们才执行循环体,然后重复执行这个操作,如果循环条件为假即(false),我们就退出循环。首先我们先执行循环体在判断循环条件,如果循环条件成立true,则继续执行循环操作,否则就退出循环。表达式2:循环条件的判断,在循环体中添加结束循环的判断,如果不添加循环条件的判断就会形成死循环。循环分为3种,分别是while循环,do while 循环,for循环。1、循环条件 规定循环的执行次数(如果不规定次数就会无限循环)
2023-04-12 16:02:41
85
原创 什么是 Token?什么是 JWT?如何基于Token进行身份验证?
JWT (JSON Web Token) 就是token这种方式的实现,通过这种方式服务器端就不需要保存 Session 数据了,只用在客户端保存服务端返回给客户的 Token 就可以了,token是在服务端生成。请求时,你可以把token它放在 Cookie 里面自动发送,但是这样不能跨域,所以更好的做法是放在 HTTP Header 的 Authorization字段中: Authorization: Bearer Token。而Header 的 Authorization字段 是需要手动指定的。
2023-04-12 16:02:28
84
原创 Shiro架构与功能介绍
Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中;Concurrency:shiro支持多线程应用的并发验证,即如在一个线程中开启另一个线程,能把权限自动传播过去;Caching:缓存,比如用户登录后,其用户信息、拥有的角色/权限不必每次去查,这样可以提高效率;Remember Me:记住我,这个是非常常见的功能,即一次登录后,下次再来的话不用登录了。
2023-04-12 15:58:51
50
原创 Mysql总结
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-03-16 14:02:10
48
原创 对称加密技术
对称加密技术就是,使用一种算法对数据进行加密,加密的方式可以看作是一个密钥,对方只有用相同的密钥也就是说对方必须知道加密的方式才能够将其解密。这种方式就称之为对称加密技术。也就是说加密和解密的方式是一样的。
2023-03-16 14:01:55
66
原创 什么是身份认证
身份认证,就是判断一个用户是否为合法用户的处理过程。最常用的简单身份认证方式是系统通过核对用户输入的用户名和口令,看其是否与系统中存储的该用户的 用户名和口令一致,来判断用户身份是否正确。对于采用指纹等系统,则出示指纹;对于硬件Key等刷卡系统,则需要刷卡。
2023-03-15 16:56:44
488
原创 密钥密钥是一种参数
密钥是一种参数,它是在使用密码(cipher)算法过程中输入的参数。同一个明文在相同的密码算法和不同的密钥计算下会产生不同的密文。很多知名的密码算法都是公开的,密钥才是决定密文是否安全的重要参数,通常密钥越长,破解的难度越大,比如一个8位的密钥最多有256种情况,使用穷举法,能非常轻易的破解,知名的DES算法使用56位的密钥,目前已经不是一种安全的加密算法了,主要还是因为56位的密钥太短,在数小时内就可以被破解。密钥分为对称密钥与非对称密钥。
2023-03-15 16:55:42
163
原创 swiftlint工作原理
SwiftLint 的工作原理是检查 Swift 代码编译过程中的 AST 和 SourceKit 环节,从而可以摆脱不同版本 Swift 语法变化的影响。AST 是编译前端形成的抽象语法树(Abstract Symbolic Tree), SourceKit 过程用来对 AST 进行代码优化,减少内存开销,提高执行效率。1.2 swiftlint工作原理。
2023-03-15 16:53:16
167
原创 什么叫密码加盐?
我们通常会将用户的密码进行Hash 加密,如果不加盐,即使是两层的 md5 都有可能通过彩虹表的方式进行破译。彩虹表就是在网上搜集的各种字符组合的 Hash 加密结果。而加盐,就是人为的通过一组随机字符与用户原密码的组合形成一个新的字符,从而增加破译的难度。在面对这个网络世界的时候,密码安全总是各个公司和用户都非常关心的一个内容,毕竟现在大家不管是休闲娱乐还是学习购物都是通过网上的帐号来进行消费的,所以我们通常会给用户的密码进行加密。在加密的时候,经常会听到“加盐”这个词,这是什么意思呢?
2023-03-15 16:52:25
170
原创 一、Spring Security介绍
(2)用户授权指的是验证某个用户是否有权限执行某个操作。在一个系统中,不同用户所具有的权限是不同的。比如对一个文件来说,有的用户只能进行读取,而有的用户可以进行修改。一般来说,系统会为不同的用户分配不同的角色,而每个角色则对应一系列的权限。(1)如果是基于Session,那么Spring-security会对cookie里的sessionid进行解析,找到服务器存储的sesion信息,然后判断当前用户是否符合请求的要求。(1)用户认证指的是:验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统。
2023-03-15 16:52:09
84
原创 常见的几种加密方式
采用MD5或者SHA1等散列算法,对明文进行加密。严格来说,MD5不算一种加密算法,而是一种摘要算法。无论多长的输入,MD5都会输出一个128位(16字节)的散列值。而SHA1也是流行的消息摘要算法,它可以生成一个被称为消息摘要的160位(20字节)散列值。MD5相对SHA1来说,安全性较低,但是速度快;SHA1和MD5相比安全性高,但是速度慢。
2023-03-15 16:51:18
179
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人