Questions tagged «authentication»

身份验证是验证身份的过程。

4
使用j_security_check在Java EE / JSF中执行用户身份验证
我想知道当前的方法是关于使用JSF 2.0(以及是否存在任何组件)和Java EE 6核心机制(登录/检查许可权/注销)的Web应用程序的用户身份验证,并且将用户信息保存在JPA中实体。Oracle Java EE教程对此有点稀疏(仅处理servlet)。 这并没有使用诸如Spring-Security(acegi)或Seam之类的其他框架,而是尽可能地希望使用新的Java EE 6平台(Web Profile)。

3
password.js RESTful身份验证
如何使用RESTful API(而不是通过Web界面)使用passport.js处理身份验证(例如本地和Facebook)? 与使用典型的res.send({data:req.data})相比,要处理从回调到RESTful响应(JSON)的数据传递,设置一个初始/ login端点,该端点重定向到Facebook(/ login不能是通过AJAX访问,因为它不是JSON响应-它是通过​​回调重定向到Facebook的)。 我已经找到https://github.com/halrobertson/test-restify-passport-facebook,但是我很难理解它。 此外,passport.js如何存储身份验证凭据?服务器(或者它是服务?)由MongoDB支持,我希望凭据(pw的登录名和盐化哈希值)存储在此处,但是我不知道passport.js是否具有这种功能。

10
实施“忘记密码”的最佳方法?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我正在寻找实现“忘记密码”功能的最佳方法。 我提出了两个想法: 当用户单击“忘记密码”时,要求用户键入用户名,电子邮件,并可能输入出生日期或姓氏。然后,带有临时密码的邮件将被发送到用户的电子邮件帐户。用户使用临时密码登录并重置密码。 与之类似,但电子邮件中将包含一个链接,以使用户重设密码。 还是有人可以建议我一种更好,更安全的方法?我也在考虑发送临时密码或链接,强制用户在24小时内重设密码,否则临时密码或链接将无法使用。怎么做?

8
来自所有主机的MySQL根访问
我已经在远程Ubuntu计算机上安装了MySQL服务器。通过以下方式root在mysql.user表中定义用户: mysql> SELECT host, user, password FROM user WHERE user = 'root'; +------------------+------+-------------------------------------------+ | host | user | password | +------------------+------+-------------------------------------------+ | localhost | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | | ip-10-48-110-188 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | | 127.0.0.1 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | | ::1 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | +------------------+------+-------------------------------------------+ …


16
最好的分布式暴力破解对策是什么?
首先,有一点背景知识:我正在为CodeIgniter实现auth + auth系统,这并不是什么秘密,到目前为止,我已经赢了(可以这么说)。但是我遇到了一个非常艰巨的挑战(大多数身份验证库都完全忽略了这一挑战,但是我坚持要正确处理):如何智能地应对大规模,分布式,可变用户名的暴力攻击。 我知道所有常用的技巧: 限制每个IP /主机尝试失败的次数,并拒绝违规者访问(例如Fail2Ban)- 由于僵尸网络变得越来越聪明,这种访问不再有效 将上述内容与已知的“不良” IP /主机(例如DenyHosts)的黑名单相结合-依赖于僵尸网络排名第一的僵尸网络,它们越来越不会 IP /主机白名单与传统身份验证结合在一起(对于动态IP用户和大多数网站上的用户流失率非常低) 在整个N分钟/小时的时间内对失败尝试的次数设置站点范围的限制,并在此之后的几分钟/小时内限制(挂起)所有登录尝试(问题是DoS攻击您成为僵尸网络的玩法) 强制性数字签名(公钥证书)或RSA硬件令牌,适用于所有没有登录/密码选项的用户(毫无疑问是坚如磐石的解决方案,但仅适用于封闭的专用服务) 强制执行超强密码方案(例如,> 25个带有符号的废话字符-再次对临时用户来说太不切实际) 最后,CAPTCHA(在大多数情况下都可以使用,但是使用户烦恼,并且对于坚定的,足智多谋的攻击者几乎毫无用处) 现在,这些只是理论上可行的想法。有很多垃圾想法使站点大开眼界(例如,对琐碎的DoS攻击)。我想要的是更好的东西。更好的是,我的意思是: 它必须具有抵御DoS和暴力攻击的安全性(+),并且不得引入任何新的漏洞,而该漏洞可能会使稍稍偷偷摸摸的bot继续在雷达下运行 它必须是自动化的。如果它需要人工来验证每个登录名或监视可疑活动,那么它将无法在实际情况下工作 它对于主流Web使用必须是可行的(例如,非程序员可以进行的高流失,高流量和开放式注册) 它不会将用户体验阻止到使临时用户感到烦恼或沮丧(并有可能放弃该网站)的程度 除非小猫真的很安全,否则它不能涉及小猫 (+)“安全”是指至少与偏执狂用户对密码保密的能力一样安全 所以-让我们听听吧!你会怎么做?您知道我没有提到的最佳做法吗(哦,请说您同意)?我承认我确实有自己的想法(结合3和4的想法),但是在让自己尴尬之前,我会让真正的专家讲话;-)

2
如何使用Python登录网页并检索Cookie以供以后使用?
我想使用python下载和解析网页,但是要访问它,我需要设置一些cookie。因此,我需要先通过https登录到网页。登录时刻需要将两个POST参数(用户名,密码)发送到/login.php。在登录请求期间,我想从响应头中检索cookie并将其存储,以便可以在请求中使用它们来下载网页/data.php。 我将如何在python(最好是2.6)中做到这一点?如果可能,我只想使用内置模块。


8
令牌认证与Cookie
令牌身份验证和使用cookie进行身份验证有什么区别? 我正在尝试实施Ember Auth Rails演示,但我不明白使用Ember Auth FAQ中有关“为什么要进行令牌身份验证?”问题中所述的使用令牌身份验证的原因。

4
微服务认证策略
我很难为微服务架构选择一种体面/安全的身份验证策略。我在该主题上找到的唯一SO帖子是:Microservice Architecture中的单点登录 我的想法是在每个服务(例如身份验证,消息传递,通知,配置文件等)中具有对每个用户的唯一引用(从逻辑上说,然后是其用户user_id),并具有id在登录时获得当前用户的可能性。 从我的研究中,我发现有两种可能的策略: 1.共享架构 在这种策略中,身份验证应用是其中一项服务。但是每个服务都必须能够进行转换session_id=>,user_id因此必须非常简单。这就是为什么我想到Redis时会存储key:value的原因session_id:user_id。 2.防火墙架构 在此策略中,会话存储并不重要,因为它仅由身份验证应用处理。然后,user_id可以将其转发到其他服务。我想到了Rails + Devise(+ Redis或mem-cached,或cookie存储等),但是有很多可能性。唯一重要的是,Service X永远不需要对用户进行身份验证。 这两种解决方案在以下方面的比较: 安全 健壮性 可扩展性 使用方便 也许您会建议我在这里没有提到的另一种解决方案? 我更喜欢#1解决方案,但还没有发现很多默认的实现方式可以确保我朝正确的方向前进,因此可以确保我的安全。 我希望我的问题不会被解决。我真的不知道还有什么要问的。 提前致谢

9
使用基本身份验证的HttpWebRequest
我正在尝试通过一个模仿“基本身份验证请求”的身份验证请求,该请求是我们在为此行为设置IIS时经常会看到的。 该URL是:https ://telematicoprova.agenziadogane.it/TelematicoServiziDiUtilitaWeb/ServiziDiUtilitaAutServlet?UC =22&SC=1&ST=2(警告:https!) 该服务器作为应用程序服务器在UNIX和Java下运行。 这是我用来连接到该服务器的代码: CookieContainer myContainer = new CookieContainer(); HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://telematicoprova.agenziadogane.it/TelematicoServiziDiUtilitaWeb/ServiziDiUtilitaAutServlet?UC=22&SC=1&ST=2"); request.Credentials = new NetworkCredential(xxx,xxx); request.CookieContainer = myContainer; request.PreAuthenticate = true; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); (我从本网站的另一篇文章中复制了此内容)。但是我从服务器收到以下答案: 基础连接已关闭:发送时发生意外错误。 我想我已经尽了我所有的C#知识所能提供的一切可能的任务,但是没有什么...

3
Spring Security筛选器链如何工作
我意识到Spring安全性是建立在过滤器链上的,该过滤器将拦截请求,检测(不存在)身份验证,重定向到身份验证入口点或将请求传递给授权服务,并最终让请求到达servlet或引发安全异常(未经身份验证或未经授权)。DelegatingFitlerProxy将这些过滤器粘合在一起。为了执行任务,这些筛选器访问服务,例如UserDetailsS​​ervice和AuthenticationManager。 链中的关键过滤器为(按顺序) SecurityContextPersistenceFilter(从JSESSIONID恢复身份验证) UsernamePasswordAuthenticationFilter(执行身份验证) ExceptionTranslationFilter(从FilterSecurityInterceptor捕获安全异常) FilterSecurityInterceptor(可能会抛出身份验证和授权异常) 我对如何使用这些过滤器感到困惑。是否是在春季提供的表单登录中,UsernamePasswordAuthenticationFilter仅用于/ login,而后面的过滤器未使用?表单登录名称空间元素是否自动配置这些过滤器?是否每个请求(无论是否经过身份验证)都到达非登录URL的FilterSecurityInterceptor? 如果我想使用从登录名检索到的JWT-token保护我的REST API ,该怎么办?我必须配置两个名称空间配置http标签,对吗?一个用于/ login,使用UsernamePasswordAuthenticationFilter,另一个用于REST URL,带有自定义JwtAuthenticationFilter。 配置两个http元素会创建两个元素springSecurityFitlerChains吗?是UsernamePasswordAuthenticationFilter默认是关闭的,直到我宣布form-login?如何SecurityContextPersistenceFilter用Authentication将从现有JWT-token而不是从中获取的过滤器替换JSESSIONID?

5
GitHub上的Git Clone通过https进行两因素身份验证
我最近开始在GitHub上使用两因素身份验证,现在我无法以通常的方式在私有存储库上使用git over https: peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo Cloning into 'MyPrivateRepo'... Username for 'https://github.com': [...] Password for 'https://[...]@github.com': remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/[...]/MyPrivateRepo/' 如果禁用两因素身份验证,则可以像以前一样使用它: peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo Cloning into 'MyPrivateRepo'... Username for 'https://github.com': [...] Password for 'https://[...]@github.com': remote: Counting objects: 147, done. remote: Total 147 …

3
JWT刷新令牌流
我正在构建一个移动应用程序,并且正在使用JWT进行身份验证。 似乎最好的方法是将JWT访问令牌与刷新令牌配对,以便我可以根据需要频繁地使访问令牌到期。 刷新令牌是什么样的?是随机字符串吗?该字符串是否已加密?是另一个JWT吗? 刷新令牌将存储在用户模型上的数据库中以供访问,对吗?在这种情况下,似乎应该对其进行加密 用户登录后,我会发回刷新令牌,然后让客户端访问一条单独的路由来检索访问令牌吗?

2
使用无状态(=无会话)身份验证时需要CSRF令牌吗?
当应用程序依赖无状态身份验证(使用HMAC之类的东西)时,是否有必要使用CSRF保护? 例: 我们只有一个页面应用程序(否则,我们必须在每个链接上附加令牌:<a href="...?token=xyz">...</a>。 用户使用进行身份验证POST /auth。成功认证后,服务器将返回一些令牌。 令牌将通过JavaScript存储在单页应用程序内的某个变量中。 该令牌将用于访问受限制的URL,例如/admin。 令牌将始终在HTTP标头中传输。 没有Http会话,也没有Cookie。 据我了解,应该不会(?!)使用跨站点攻击,因为浏览器不会存储令牌,因此它无法自动将令牌发送到服务器(使用Cookies /时会发生这种情况。会话)。 我想念什么吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.