Questions tagged «authentication»

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

4
如何在SQL Server中将Active Directory用户组添加为登录名
我有一个.net应用程序,该应用程序使用Windows身份验证连接到SQL Server。 我们无法在应用程序中使用SQL Server身份验证。我们的项目中有很多Active Directory用户。因此,我们必须为SQL Server中的每个Active Directory用户创建一个单独的登录帐户,而不是为每个AD用户创建一个单独的登录帐户,是否可以使用SQL Server中的Active Directory用户组?

6
如何在Spring Security / SpringMVC中手动设置经过身份验证的用户
新用户提交“新帐户”表单后,我想手动登录该用户,这样他们就不必在后续页面上登录。 通过spring安全拦截器的普通表单登录页面工作正常。 在新帐户形式的控制器中,我正在创建一个UsernamePasswordAuthenticationToken并在SecurityContext中手动进行设置: SecurityContextHolder.getContext().setAuthentication(authentication); 稍后,我在同一页面上检查用户的登录身份: SecurityContextHolder.getContext().getAuthentication().getAuthorities(); 这将返回我之前在身份验证中设置的权限。一切都很好。 但是,在我加载的下一页上调用相同的代码时,身份验证令牌只是UserAnonymous。 我不清楚为什么它没有保留我在上一个请求中设置的身份验证。有什么想法吗? 可能与会话ID设置不正确有关吗? 是否有某种方式可能会覆盖我的身份验证? 也许我还需要保存身份验证的另一步骤? 还是我需要做一些事情来在整个会话中声明身份验证,而不是某种程度上的单个请求? 只是寻找一些想法可以帮助我了解这里发生的事情。

2
如何进行无状态(无会话)和无cookie的身份验证?
鲍勃使用Web应用程序来实现目标。和: 他的浏览器处于节食状态,因此不支持cookie。 Web应用程序是一种流行的应用程序,它在给定的时刻可以与许多用户打交道-它必须很好地扩展。只要保持会话会限制同时连接的数量,并且当然会带来不可忽略的性能损失,我们可能希望拥有一个无会话系统:) 一些重要的注意事项: 我们确实具有传输安全性(HTTPS及其最好的朋友); 在幕后,Web应用程序代表当前用户(这些系统确实将Bob识别为用户之一)将很多操作委托给外部服务 -这意味着我们必须向他们转发Bob的凭据。 现在,我们如何对Bob进行身份验证(针对每个请求)?哪种方法可以实现这种情况? 通过HTML表单隐藏字段使用凭据打网球 ... 球包含凭据(用户名和密码),两个球拍分别是浏览器和Web应用程序。换句话说,我们可以通过表单字段而不是通过cookie来回传输数据。在每个Web请求中,浏览器都会发布凭据。但是,对于单页应用程序,这看起来像是在橡胶墙上打壁球,而不是打网球,因为包含凭据的Web表单可能会在整个页面生命周期中保持有效 (并且服务器将配置为不提供凭据)。 将用户名和密码存储在页面的上下文中-JavaScript变量等。此处需要单页,恕我直言。 基于加密令牌的身份验证。在这种情况下,登录操作将导致生成加密的安全令牌(用户名+密码+其他内容)。该令牌将被发还给客户端,并且即将到来的请求将带有令牌。这有意义吗?我们已经有了HTTPS ... 其他... 不得已:不要这样做,将凭据存储在会话中!会议很好。有或没有cookie。 关于上述任何想法,您是否会想到任何Web /安全性问题?例如, 超时 -我们可以保留一个timestamp以及凭据(时间戳= Bob输入凭据的时间)。例如,当NOW-timestamp> threshold时,我们可能会拒绝该请求。 跨站点脚本保护-不应有任何不同,对吗? 非常感谢您抽出宝贵的时间阅读本文:)

6
通过Active Directory使用LDAP在PHP中进行身份验证
我正在寻找一种通过PHP(通过Active Directory作为提供者)通过LDAP验证用户身份的方法。理想情况下,它应该能够在IIS 7上运行(adLDAP在Apache上运行)。有谁做过类似的事情,并且成功了? 编辑:我更喜欢一个库/类,其中的代码已经准备就绪...如果有人已经发明了轮子,那就太愚蠢了。

2
Google Authenticator在Python中的实现
我正在尝试使用可以通过Google Authenticator应用程序生成的一次性密码。 Google身份验证器的功能 基本上,Google身份验证器实现两种类型的密码: HOTP-基于HMAC的一次性密码,这意味着密码会在每次呼叫时更改,以符合RFC4226的要求,并且 TOTP-基于时间的一次性密码,每30秒更改一次(据我所知)。 Google身份验证器也可以在此处作为开源使用:code.google.com/p/google-authenticator 当前代码 我一直在寻找用于生成HOTP和TOTP密码的现有解决方案,但没有找到太多。我拥有的代码是负责生成HOTP的以下代码段: import hmac, base64, struct, hashlib, time def get_token(secret, digest_mode=hashlib.sha1, intervals_no=None): if intervals_no == None: intervals_no = int(time.time()) // 30 key = base64.b32decode(secret) msg = struct.pack(">Q", intervals_no) h = hmac.new(key, msg, digest_mode).digest() o = ord(h[19]) & 15 h = (struct.unpack(">I", h[o:o+4])[0] & …

5
设置跨源请求的Cookie
如何跨源共享Cookie?更具体地说,如何将Set-Cookie标头与标头结合使用Access-Control-Allow-Origin? 这是我的情况的解释: 我正在尝试为localhost:4000在托管的Web应用程序中运行的API设置Cookie localhost:3000。 看来我在浏览器中收到了正确的响应头,但是不幸的是它们没有作用。这些是响应头: HTTP / 1.1 200 OK Access-Control-Allow-Origin:http:// localhost:3000 有所不同:来源,接受编码 Set-Cookie:token = 0d522ba17e130d6d19eb9c25b7ac58387b798639f81ffe75bd449afbc3cc715d6b038e426adeac3316f0511dc7fae3f7; 最大年龄= 86400; 域=本地主机:4000; 路径= /; Expires = Tue,19 Sep 2017 21:11:36 GMT; HttpOnly 内容类型:application / json; 字符集= utf-8 内容长度:180 ETag:W /“ b4-VNrmF4xNeHGeLrGehNZTQNwAaUQ” 日期:2017年9月18日星期一21:11:36 GMT 连接:保持活动状态 此外,Response Cookies当我使用Chrome开发人员工具的“网络”标签检查流量时,可以在下面看到Cookie 。但是,我看不到“应用程序”标签中的设置了Cookie Storage/Cookies。我没有看到任何CORS错误,因此我想我还缺少其他东西。 有什么建议? 更新一: 我在React-Redux应用程序中使用请求模块/signin向服务器上的端点发出请求。对于服务器,我使用express。 快递服务器: res.cookie('token','xxx-xxx-xxx',{maxAge:86400000,httpOnly:true,domain:'localhost:3000'}) …



6
AngularJS:在单页​​应用程序中使用身份验证的基本示例
我是AngularJS的新手,并仔细阅读了他们的教程,并对此有所了解。 我为项目准备了一个后端,每个REST端点都需要进行身份验证。 我想做什么 a。)我想为我的项目准备一个页面http://myproject.com。 b。)用户在浏览器中单击URL后,根据用户是否登录,将在同一URL下向他显示主页/视图或登录页面/视图http://myproject.com。 c。)如果用户未登录,则填写该表单,服务器将设置一个USER_TOKENin会话,因此将根据以下身份验证对端点的所有其他请求USER_TOKEN 我的困惑 a。)如何使用AngularJS处理客户端身份验证?我在这里和这里看到了,但不明白如何使用它们 。b。)如何根据用户是否在同一URL下登录向用户显示不同的视图http://myproject.com 我是第一次使用angular.js,真的对如何开始感到困惑。非常感谢任何建议和/或资源。

7
使用password.js在node.js中进行身份验证后重定向到上一页
我正在尝试使用node.js,express和passport.js建立登录机制。Login本身工作得很好,会话也可以很好地存储在redis上,但是在提示用户进行身份验证之前,将用户重定向到他从那里开始时确实存在一些麻烦。 例如,用户跟随链接http://localhost:3000/hidden,然后重定向到,http://localhost:3000/login但是我希望他再次重定向回http://localhost:3000/hidden。 这样做的目的是,如果用户随机访问需要首先登录的页面,则应将其重定向到提供其凭据的/ login站点,然后再重定向回他先前尝试访问的站点。 这是我的登录信息 app.post('/login', function (req, res, next) { passport.authenticate('local', function (err, user, info) { if (err) { return next(err) } else if (!user) { console.log('message: ' + info.message); return res.redirect('/login') } else { req.logIn(user, function (err) { if (err) { return next(err); } return next(); // <-? …


2
使用PassportJS,如何将其他表单字段传递给本地身份验证策略?
我使用passportJS,我想提供的不仅仅是更多的req.body.username和req.body.password我的身份验证策略(护照本地)。 我有3个表单字段:username,password,和foo 我如何req.body.foo从本地策略访问,该策略如下所示: passport.use(new LocalStrategy( {usernameField: 'email'}, function(email, password, done) { User.findOne({ email: email }, function(err, user) { if (err) { return done(err); } if (!user) { return done(null, false, { message: 'Unknown user' }); } if (password != 1212) { return done(null, false, { message: 'Invalid password' }); } …

8
在Python中加盐并哈希密码
该代码应该用盐来散列密码。盐和哈希密码将保存在数据库中。密码本身不是。 鉴于该操作的敏感性,我想确保所有内容都是洁净的。 import hashlib import base64 import uuid password = 'test_password' salt = base64.urlsafe_b64encode(uuid.uuid4().bytes) t_sha = hashlib.sha512() t_sha.update(password+salt) hashed_password = base64.urlsafe_b64encode(t_sha.digest())

4
如何在ASP.NET MVC中重定向到动态登录URL
我正在创建一个多租户网站,为客户托管页面。URL的第一段将是标识客户端的字符串,该字符串使用以下URL路由方案在Global.asax中定义: "{client}/{controller}/{action}/{id}" 使用/ foo / Home / Index之类的URL可以正常工作。 但是,当使用[Authorize]属性时,我想重定向到也使用相同映射方案的登录页面。因此,如果客户端是foo,则登录页面将是/ foo / Account / Login,而不是web.config中定义的固定的/ Account / Login重定向。 MVC使用HttpUnauthorizedResult返回401未经授权状态,我认为这会使ASP.NET重定向到web.config中定义的页面。 那么,有谁知道如何重写ASP.NET登录重定向行为?还是通过创建自定义授权属性在MVC中进行重定向会更好? 编辑-答案:在深入研究.Net源代码之后,我认为自定义身份验证属性是最佳解决方案: public class ClientAuthorizeAttribute: AuthorizeAttribute { public override void OnAuthorization( AuthorizationContext filterContext ) { base.OnAuthorization( filterContext ); if (filterContext.Cancel && filterContext.Result is HttpUnauthorizedResult ) { filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary …

9
ASP.NET Core Web API身份验证
我正在努力如何在Web服务中设置身份验证。该服务是使用ASP.NET Core Web API构建的。 我所有的客户端(WPF应用程序)应使用相同的凭据来调用Web服务操作。 经过研究,我想到了基本的身份验证-在HTTP请求的标头中发送用户名和密码。但是经过数小时的研究,在我看来,基本身份验证不是ASP.NET Core的方法。 我发现的大多数资源都是使用OAuth或其他中间件来实现身份验证。但这对于我的情况以及使用ASP.NET Core的Identity部分来说似乎太大了。 那么,实现我的目标的正确方法是什么-在ASP.NET Core Web服务中使用用户名和密码进行简单身份验证? 提前致谢!

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.