标签: authentication

ASP.NET核心中基于令牌的认证

我正在使用ASP.NET Core应用程序.我正在尝试实现基于令牌的身份验证,但无法弄清楚如何在我的情况下使用新的安全系统.我经历了一些例子,但他们对我没什么帮助,他们使用的是cookie身份验证或外部身份验证(GitHub,Microsoft,Twitter).

我的场景是什么:angularjs应用程序应该请求/tokenurl传递用户名和密码.WebApi应授权用户并返回access_tokenangularjs app在以下请求中使用的内容.

我找到了很好的文章,关于在当前版本的ASP.NET中实现我所需要的 - 使用ASP.NET Web API 2,Owin和Identity进行基于令牌的身份验证.但对我来说,如何在ASP.NET Core中做同样的事情并不明显.

我的问题是:如何配置ASP.NET Core WebApi应用程序以使用基于令牌的身份验证?

c# authentication access-token asp.net-web-api asp.net-core

158
推荐指数
2
解决办法
7万
查看次数

使用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配置文件).

authentication jsf jaas j-security-check java-ee

155
推荐指数
3
解决办法
14万
查看次数

passport.js RESTful auth

如何使用passport.js通过RESTful API而不是通过Web界面处理身份验证(例如本地和Facebook)?

特别关注的是处理从回调到RESTful响应(JSON)的数据传递与使用典型的res.send({data:req.data}),设置重定向到Facebook的初始/登录端点(/登录不能是通过AJAX访问,因为它不是JSON响应 - 它是一个带有回调的Facebook重定向.

我找到了https://github.com/halrobertson/test-restify-passport-facebook,但我无法理解它.

此外,passport.js如何存储身份验证凭据?服务器(或它是服务吗?)由MongoDB支持,我希望凭证(登录和盐水的pw)存储在那里,但我不知道passport.js是否具有这种类型的功能.

authentication rest node.js restify passport.js

155
推荐指数
2
解决办法
5万
查看次数

什么是端点?

我一直在阅读OAuth,它一直在讨论端点.什么是端点?

authentication api oauth endpoint

152
推荐指数
9
解决办法
15万
查看次数

将ASP.NET MVC5身份验证添加到现有项目

我在网上看到过很多类似的页面,但大多数都使用新项目而不是现有项目,或者没有必要的功能.所以,我有一个现有的MVC 5项目,并希望将ASP.NET MVC5 Identity与登录,电子邮件确认和密码重置功能集成.

除此之外,我还需要在数据库上创建所有必要的表,即用户,角色,组等(我在我的项目中使用EF Code First).是否有符合这些需求的文章或样本?任何建议将不胜感激.提前致谢...

asp.net authentication asp.net-mvc owin asp.net-identity

151
推荐指数
2
解决办法
11万
查看次数

通过PHP进行HTTP身份验证注销

注销HTTP身份验证保护文件夹的正确方法是什么?

有一些解决方法可以实现这一点,但它们具有潜在的危险性,因为它们可能是错误的,或者在某些情况/浏览器中不起作用.这就是为什么我正在寻找正确和干净的解决方案.

php authentication .htaccess password-protection http-headers

149
推荐指数
8
解决办法
11万
查看次数

什么是最好的分布式蛮力对策?

首先,一点背景:我正在为CodeIgniter实现一个auth + auth系统并不是什么秘密,到目前为止我赢了(可以这么说).但是我遇到了一个非常重要的挑战(大多数auth库完全错过了,但我坚持正确处理它):如何智能地处理大规模,分布式,可变用户名的暴力攻击.

我知道所有常用的技巧:

  1. 限制每个IP /主机的失败尝试次数并拒绝违规者访问(例如Fail2Ban) - 由于僵尸网络变得越来越智能,它们不再起作用
  2. 将上述内容与已知的"坏"IP /主机(例如DenyHosts)的黑名单相结合- 它依赖于僵尸网络下降为#1,它们越来越不会
  3. IP /主机白名单与传统的身份验证相结合(对于动态IP用户而言,在大多数网站上都是无用的)
  4. 在N分钟/小时内设置失败尝试次数的站点范围限制,并在此之后限制(暂停)所有登录尝试,持续数分钟/小时(DoS攻击你的问题变为僵尸网络儿童游戏)
  5. 没有登录/密码选项的所有用户的强制性数字签名(公钥证书)或RSA硬件令牌(毫无疑问是坚如磐石的解决方案,但仅适用于封闭的专用服务)
  6. 强制执行的超强密码方案(例如> 25个带有符号的无意义字符 - 再次对临时用户来说太不切实际)
  7. 最后,CAPTCHA(在大多数情况下都可以工作,但对用户来说很烦人,对于一个坚定的,足智多谋的攻击者几乎无用)

现在,这些只是理论上可行的想法.有很多垃圾想法可以打开网站(比如琐碎的DoS攻击).我想要的是更好的东西.更好的是,我的意思是:

  • 它必须安全(+)抵御DoS和暴力攻击,并且不会引入任何新的漏洞,这些漏洞可能会让稍微狡猾的机器人继续在雷达下运行

  • 它必须是自动化的.如果需要人工操作员验证每次登录或监控可疑活动,那么它无法在真实场景中运行

  • 它必须适用于主流网络使用(即可由非程序员执行的高流失率,高流量和开放式注册)

  • 它不会妨碍用户体验到临时用户会感到烦恼或沮丧(并可能放弃网站)

  • 它不能涉及小猫,除非它们真的是非常安全的小猫

(+)'安全',我的意思是至少和偏执的用户保密密码一样安全

所以 - 让我们听听吧!你会怎么做?你知道我没有提到过的最佳实践(哦,请你说)吗?我承认我对自己有所了解(结合3和4的想法),但我会让真正的专家在让自己尴尬之前说话;-)

security authentication brute-force

149
推荐指数
7
解决办法
2万
查看次数

"忘记密码"实施的最佳方式?

我正在寻找实现"忘记密码"功能的最佳方法.

我提出了2个想法:

  1. 当用户点击忘记密码时,用户需要输入用户名,电子邮件以及出生日期或姓氏.然后,具有临时密码的邮件将被发送到用户电子邮件帐户.用户使用临时密码登录并重置其密码.

  2. 类似,但电子邮件中会包含一个链接,让用户重置密码.

或者任何人都可以建议我更好更安全的方式?我也想发送临时密码或链接,强制用户在24小时内重置密码,否则临时密码或链接将无法使用.怎么做?

security authentication passwords forgot-password

149
推荐指数
9
解决办法
9万
查看次数

Google身份验证器可用作公共服务吗?

是否存在在自运行(例如LAMP堆栈)Web应用程序上使用Google身份验证器(双因素身份验证)的公共API ?

security authentication google-oauth

146
推荐指数
6
解决办法
10万
查看次数

Amazon S3直接从客户端浏览器上传文件 - 私钥泄露

我正在使用JavaScript,通过REST API实现从客户端计算机到Amazon S3的直接文件上传,没有任何服务器端代码.一切正常,但有一件事令我担心......

当我向Amazon S3 REST API发送请求时,我需要签署请求并将签名放入Authentication标头.要创建签名,我必须使用我的密钥.但所有事情都发生在客户端,因此,可以从页面源轻松显示密钥(即使我对我的源进行模糊/加密).

我怎么处理这个?这是一个问题吗?也许我可以将特定的私钥使用仅限于来自特定CORS Origin的REST API调用,仅限于PUT和POST方法,或者可能只将链接键连接到S3和特定存储桶?可能还有其他认证方法吗?

"无服务器"解决方案是理想的,但我可以考虑涉及一些服务器端处理,不包括将文件上传到我的服务器然后发送到S3.

javascript authentication amazon amazon-s3 amazon-web-services

146
推荐指数
4
解决办法
11万
查看次数