Spring Security 3 以编程方式登录

2024-05-04

我正在使用 spring 创建一个 REST Web 服务,我需要在其中实现登录/注销功能。函数的 url 应类似于 .../api/login 和 .../api/logout。用户名和密码将使用 POST 方法传递。

我在 REST Web 服务下面有一个服务层。在服务层中,我有“登录”和“注销”功能的代码。我想使用 spring security 将登录的用户保存在 spring 的上下文中。我找到了几个答案,但没有给出完整的示例来说明如何做到这一点。我还想知道使用 spring security 进行自定义身份验证的最先进的方法是什么(不使用任何登录表单,只是以编程方式登录/注销)。


最好的方法是将您的身份验证实现插入到 Spring Security 中。 您可以通过将您自己的“身份验证提供程序”注册到 Spring Security 中来完成此操作。

例如:

<bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
    <property name="providers">
        <list>
            <ref local="myAuthenticationProvider"/>
        </list>
    </property>
</bean>

<bean id="myAuthenticationProvider" class="org.my.web.restapi.authentication.MyAuthenticationProvider"/>

另一件事:我知道这很耗时,但读完后Spring安全参考 http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity-single.html你一定会得到“大局”:-)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Security 3 以编程方式登录 的相关文章

  • 使用 https 的 Web 服务身份验证给出错误

    我编写了一个简单的 Web 服务 并使用摘要和 HTTPS 身份验证来保护它 我已经使用 Java 中的 keytool 生成了我的证书 当我通过创建 war 文件在 Tomcat 中部署 Web 服务时 axis 的欢迎页面正确显示 但是
  • 身份验证在不应该返回“401(未经授权)”时返回

    我第一次设置身份验证功能 在用户登录后得到了一些意外的结果 一位同事给了我一个具有工作身份验证的应用程序 以模仿我的应用程序 看起来我所做的一切都是正确的 我在前端使用 AngularJS 在后端框架使用 SailsJS 并且护照JS ht
  • 泽西宁静例外

    我面对的是泽西岛 2 7 这是我的服务 package edu srv rest import javax ws rs GET import javax ws rs POST import javax ws rs Path import j
  • Jetty addFilter 使用 Spring Security 并且没有 web.xml

    通常我会添加org springframework web filter DelegatingFilterProxy在 web xml 中添加这样的代码片段
  • @PreAuthorize 不起作用。可能存在什么问题?

    有一个我用过的管理页面 PreAuthorize角色注释ROLE ADMIN 但是没有此角色的用户也可以访问此页面 该安全上下文文件
  • 在 ASP.NET MVC 中使用 MySQL 的 AccountController

    在 Visual Studio 中创建默认的 ASP NET MVC 项目会设置一个可以在其中注册用户的基本项目 我将如何继续更改它以使用 MySQL 服务器而不是 SQLServer 现在可以使用了 安装最新的 Connector NET
  • 具有 HTTP 基本身份验证的 PhoneGap FileTransfer

    我正在尝试使用以下命令将文件从 PhoneGap 上传到服务器文件传输方法 http docs phonegap com en 1 6 1 cordova file file md html FileTransfer 我需要为此上传启用 H
  • REST API 路由最佳实践

    我想知道当订单是一种资源时 为以下场景创建 REST API 的最佳实践是什么 获取数据库中的所有订单 当然不是实际场景 仅供理解 通过订单ID获取订单 根据订单ID获取单个订单 单个 GET 路由是否可以用于所有这些场景 或者我们应该针对
  • OpenID 和 OAuth 之间有什么区别?

    我真的想了解 OpenID 和 OAuth 之间的区别 也许它们是两个完全不同的东西 OpenID http openid net 是关于身份验证 即证明您是谁 OAuth http oauth net 是关于授权的 即授予对功能 数据 等
  • 在 PHP 中使用 file_get_contents 进行 PUT 请求的错误请求

    这个 api 调用使用 Postman REST 客户端 可以正常工作 但是当我的 GAE 应用程序中的服务器上发出请求时 我当前收到以下错误 HTTP 请求失败 在 C Projects app file php 第 26 行 打开流失败
  • 如何在 Jersey RESTful Web 服务中放置 cookie?

    我想通过 Jersey API 将 cookie 从 PUT webservice result 放置到 POST webservice 这是我的代码 WebResource service1 client resource http te
  • Jhipster:对非管理员隐藏实体

    问候 Java 潮人 我刚刚生成了一个 jhipster 项目并创建了一些实体 我想通过将某些实体限制为仅管理员用户来隐藏它们 我该如何实现这一目标 Thanks 初读Spring安全文档 http docs spring io autor
  • docker登录 - 存储凭据时出错 - 写入权限错误

    我正在运行一个docker login命令作为 Bamboo 构建作业的一部分 命令文本通过以下方式获得aws ecr get login调用并在子 shell 中执行 该命令失败并显示Error saving credentials er
  • CORS 问题从 React 应用程序 > 节点服务器 > 重定向到 Google OAuth2 身份验证发出 AJAX 请求

    大家好 过去两天我一直在绞尽脑汁研究这个问题 但没有运气 这是我在尝试从我的 React 应用程序 localhost 3000 使用 Google Oauth2 Passport 策略进行身份验证时遇到的错误 我正在 localhost
  • 如何让 @PostAuthorize 失败导致 @Transactional 回滚?

    我的应用程序中有一些复杂的访问限制 这些限制基本上需要结合用户的角色以及域对象的一些深层属性来做出访问决策 对于我的一些方法 特别是像getItem Integer id and updateItem Integer id FormBean
  • 如何以编程方式下载公共 Google Drive 文件?

    我有一个后端服务器 必须下载 Google 云端硬盘上的文件 该文件已由所有者向公众共享 我们的客户通过电子邮件向我们发送链接 我们从电子邮件中获取链接 不涉及 UI 该程序需要获取或下载文件并离线处理它 谷歌示例似乎是使用 UI 运行的
  • 期待、互动,然后再次期待

    有几篇关于相同内容的帖子 但我仍然无法使我的期望脚本正常工作 我的目的是自动化一切 但保留用户输入的密码 所以脚本有 3 个部分 自动登录 给予用户交互以输入密码 将控制权交还给 Expect 脚本以继续工作 所以我有一个将生成的脚本 其中
  • 使用 C# 以编程方式登录网站

    因此 我一直在网上搜索 试图了解有关如何使用 C 以编程方式登录网站的更多信息 我不想使用网络客户端 我想我想使用 HttpWebRequest 和 HttpWebResponse 之类的东西 但我不知道这些类是如何工作的 我想我正在寻找某
  • 如何使用 PATCH 更新简单的数据库字段?

    我是 php 和 API 的新手 我正在尝试学习这些方法 但我无法执行 PATCH 或 PUT 来更新我的简单 mysql 数据库 我使用了以下代码 if isset PATCH con mysqli connect localhost r
  • 创建rest api url以连接mysql数据库

    我想学习如何创建一个rest api url 以便我可以使用该url获取信息并将信息发布到我的mysql数据库中 谷歌搜索了很多并阅读了各种文章 但没有找到任何精确的内容可以学习 所有内容均以 about api 开头 以已创建的其余 ur

随机推荐