您的位置: 首页 - 站长

c 做网站怎么发布重庆企业网站推广价格

当前位置: 首页 > news >正文

c 做网站怎么发布,重庆企业网站推广价格,沁县网站建设,建筑培训学校注#xff1a;此为笔者学习狂神说SpringBoot的笔记#xff0c;其中包含个人的笔记和理解#xff0c;仅做学习笔记之用#xff0c;更多详细资讯请出门左拐B站#xff1a;狂神说!!! Spring Security Spring Security是一个基于Java的开源框架#xff0c;用于在Java应用程…注此为笔者学习狂神说SpringBoot的笔记其中包含个人的笔记和理解仅做学习笔记之用更多详细资讯请出门左拐B站狂神说!!! Spring Security Spring Security是一个基于Java的开源框架用于在Java应用程序中提供身份验证和授权功能。它是Spring框架的一部分可以与Spring应用程序集成为应用程序提供安全性。 Spring Security提供了一套易于使用的API和配置选项可以帮助开发人员轻松地实现身份验证和授权功能。它可以用于保护Web应用程序、REST API和方法级别的安全性。 Spring Security的主要功能包括 身份验证Spring Security提供了多种身份验证方法包括基于表单、基于HTTP基本认证、基于LDAP、基于CAS等。开发人员可以选择适合自己应用程序的身份验证方法来保护应用程序的安全性。 授权Spring Security提供了灵活的权限控制机制可以根据应用程序的需求定义细粒度的权限控制规则。开发人员可以使用注解、配置文件或数据库来定义权限规则并根据用户角色或其他条件来限制用户的访问权限。 认证和授权支持Spring Security可以与常见的认证和授权机制集成包括LDAP、Active Directory、OAuth、OpenID Connect等可以帮助开发人员轻松地实现与这些机制的集成。 安全性过滤器链Spring Security使用过滤器链来处理请求每个过滤器都可以执行不同的安全性操作。开发人员可以根据应用程序的需求配置不同的过滤器并将它们链接在一起以确保请求经过正确的安全检查。 安全性事件和监听器Spring Security提供了一套事件和监听器机制可以在用户认证和授权过程中触发不同的事件。开发人员可以注册自己的监听器以便在特定事件发生时执行自定义的逻辑。
总结来说Spring Security是一个功能强大且易于使用的安全框架可以帮助开发人员轻松地实现身份验证和授权功能并提供了许多灵活的配置选项和扩展点以满足各种应用程序的安全需求。 1、准备工作 1浏览官网 2创建项目 3导入静态资源 4关闭模板引擎 2、构造controller类 实现链接访问静态资源与页面 3、用户认证和授权 导入security依赖 浏览官方文档 自定义的操作 1) 自定义SecurityConfig类 用来自定义配置springsecurity 点进去看一下源码 看一些重写的方法 ①重写configureWebSecurity web授权方法 protected void configure(HttpSecurity http) throws Exception没有权限跳到登录页面 点进去看一下formlogin的源码 默认会跳转回/login首页否则 /loginerror authorizeRequests(): 请求权限antMatchers“”;“”:增加地址hasRole指定访问用户and连接formLogin有权限就登陆没权限就踢出去 默认是 nameusername与namepassword不可以更改 ②重写configureAuthenticationManagerBuilder auth方法用户认证 出现错误 看一下源码然后添加加密方法在错误中读源码找到实现方法 4、注销及权限管理 1在数据库中获得账号和密码 2注销功能 logout():会默认跳到“/login” logout后会调用许多方法去删除一些配置cookies、HttpSession ①注销的链接 “/logout” ②添加注销按钮(添加超链接) 问题图标不对 ③上网下载图标 Semantic UI 中文网→表单→图标→复制名字→粘贴修改对应的样式 复制名字即可后面的icon不可以去掉 springboot自动提供logout页面功能 ④注销功能跳到首页 直接调用后面的logoutSuccessUrl成功登出即可 常规写法 无效的 有效 注意 3登录后用户只可以看到规定的内容 ①先浏览maven仓库网页 ②添加依赖 注 ③添加命名空间 注 ⑤修改首页的配置 引入 sec ⑥遇到问题1版本不支持 改低版本没做 原生的登录界面html ⑦遇到问题2登录注销功能失败 index.html页面写错了需要不断测试 principal.getPassword()没解决 结论不能用principle方法这个principle是一个令牌设计CSRF防护功能 ⑧关闭自动配置的CSRF防护功能 用get请求会出现登录和注销错误的情况这是因为引入了thymeleaf-security依赖后springboot自动装配的需要关掉才能使用 如果有用到表单postpost提交修改数据的请求也不行因为CSRF功能默认开启后会拦截所有涉及数据修改方式的请求需要配置携带CSRF Token令牌才行 不同权限的用户显示不同内容实现动态菜单的效果 导入thymeleaf-security依赖后可以在前端做一些后端的操作 然后判断是否显示一些东西 5、记住我及首页定制 1实现rememberMe 关掉浏览器看一下能不能直接进去登录后的页面 ①通过审查元素理解rememberMe 开启一次浏览器代表一次会话虽然清除了cookie但是服务端还连接着需要重启服务器后才可以看到清除了cookie后的效果 ②实现首页定制 成功和失败的login页面 ③遇到问题1 尝试1 表单跳转的链接(“/toLogin”)和loginpage“/toLogin”一致就可以啦为什么会跳转到index页面(已解决) 表单“/toLogin”method“post”,会跳到这里来解决 POST 尝试2 表单action改为: /login 添加loginProcessingUrl“/login” 表单的数据接收不到 login页面怎么接受密码的账号的 点开源码看一下 默认的参数改了会接收不到需要自定义 自定义接收参数 2在首页添加rememberMe功能 ①添加rememberMe选框 ②修改后端rememberMe 看源码 rememberMeParameter:自定义接收前端的参数 修改排版 注意 总结 主要用户认证和授权、注销和权限管理、记住我和首页定制 ​ 1.引入springsecurity框架后这个比之前写拦截器等简便很多。 ​ 2.Shiro面试会问springsecurity默认会的 ​ 3.未解决的问题 ​ ①表单跳转的链接(“/toLogin”)和loginpage“/toLogin” 一致就可以啦为什么会跳转到index页面。 已解决 扩展要使用表单提交的数据需要表单申明 默认请求方式post特殊请求特殊接收请求路径“/login”, 当然后台需要post来接收请求。 SpringBoot学习(五)-Spring Security配置与应用 开发的学习笔记到此完结笔者归纳、创作不易大佬们给个3连再起飞吧