问题标签 [anonymous-users]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
90 浏览

single-page-application - SPA 客人结账

我正在构建一个带有访客结账功能的 SPA 应用程序。在此期间,我调用一个 API 来创建访客用户的地址和姓名数据,然后调用另一个 API 添加有关结帐的其他详细信息。

在调用不同的 API 时,有没有办法确保会话中的当前访客/匿名用户来自同一个会话?我无法在客户端上创建令牌,因为这样任何人都可以访问令牌的用户名/密码。是否存在人们在不创建代币的情况下为此使用的通用模式或产品?

谢谢

特里

0 投票
1 回答
383 浏览

python - 认证会话中的请求有时由 Django 中的 AnonymousUser 发送

我有一个 django 应用程序,它在nginx代理后面的gunicorn上运行。

当用户登录时,我将他们重定向到由 Angular 开发的单页应用程序。

我正在为 SPA 中使用的所有函数使用@login_required装饰器。

在使用该应用程序时,突然以 AnonymousUser 发送一个随机函数调用,因此 @login_required 装饰器不起作用,所以我注销了用户,或者显示错误。

我正在使用自定义用户配置文件,会话引擎为cached_db,由pgbouncer后面的memcachedpostgresql运行

我的认证相关设置如下: ps:get_env_variable() 函数从操作系统环境中获取变量。

有趣的是,我对另一个 Django 应用程序使用相同的设置,效果很好。Django 作为 AnonymousUser 发送一个请求的原因可能是什么?我以前从未见过这个。。

此外,如果我删除 @login_required 装饰器,下一个函数调用将作为登录用户发送。因此,15-20 个请求中有 1 个作为 AnonymousUser 发送。这真的很奇怪..

0 投票
1 回答
1236 浏览

c# - ASP.NET Identity 2 and Anonymous Users

In our developing e-commerce solution we are using AspNet Identity 2.2.1 and it is required that any guest (anonymous) users should complete checkout without prior registration to the website. In order to fullfill this requirement have written an ActionFilter named UserMigrationAttribute which obtains SessionTrackId (string GUID) from cookie -which we set from a HttpModule for every request if SessionTrackId is not found along with request cookies- and creates and actual IdentityUser in database with the username something like SessionTrackId@mydomain.com.

We have decorated our BaseController class with this UserMigration attribute in order to utilize its functions throughout the site.

Everything up to this point works as expected with single downside issue, which is when the page is being loaded for the first time for any user, if we try to make an Jquery Ajax Call to a Method which have [ValidateAntiForgeryToken] attribute, the call fails with the 'The provided anti-forgery token was meant for a different claims-based user than the current user.' error, even though we are sending __RequestVerificationToken parameter with every ajax call.

But if user opens another page by clicking link and/or reloads/refreshes current page, all the subsequent ajax calls complete successfully.

In our understanding UserMigrationAttribute creates user on OnActionExecuting method, but after we signIn user in the process @Html.AntiForgeryToken() is not being updated with the right values.

You may find the UserMigrationAttribute code below;

Any help or suggestions are highly appreciated.

Thank you,

0 投票
1 回答
1052 浏览

python - 'AnonymousUser' 对象不可迭代 - 匿名和经过身份验证的用户访问视图

我有以下网址:

主要urls.py

accounts/urls.py

我创建了 UserDetailView 来查看用户的数据

当我在执行请求的用户登录时访问/accounts/profiles/luisa@gmail.com/URL 时,请求正常

[08/Sep/2017 23:56:20]“GET /accounts/profiles/luisa@gmail.com/HTTP/1.1”200 23577

但是,我希望匿名用户或未经身份验证的用户可以访问此视图,这些用户未在我的应用程序中注册。当匿名用户访问 /accounts/profiles/luisa@gmail.com/url 时,我收到以下消息:

我的自定义管理器方法is_following()是:

和推荐的()方法:

如何允许UserDetailView匿名用户访问我的?

0 投票
1 回答
90 浏览

javascript - 如何在不登录的情况下为每个用户存储不同的(随机和临时)后端数据?

为每个用户保留小后端数据的最简单方法是什么?

我正在开发一个程序,该程序将为每个用户随机选择一个单词字符串,而我刚刚开始决定如何构建它。尽管选择是随机的,但我希望它们是持久的——不一定如果用户第二天回来,但至少通过可能是 20 分钟的会话。这在前端完全是微不足道的,但随机选择必须发生在 Node 后端(因为用户不知道它是什么),并且在他们发出下一个请求时无法更改。出于这些目的,我们假设用户具有足够的技术知识来查看源代码或打开开发工具,但不担心有人入侵。

我已经知道如何将数据存储在数据库(Mongo 或 SQL)中,但这对于一个单词来说似乎有点矫枉过正。我已经知道如何使用用户/密码或使用 OAuth 登录用户,但这似乎又有点矫枉过正,因为数据并不是真正私有的,不应该需要登录。此外,这对用户来说也是额外的麻烦。我正在考虑使用 Firebase 对匿名用户进行身份验证,但我想知道我的后端是否有一种更简单/更快的方法来识别我正在处理的低安全性用户,只是为了与第一个用户的一个词进行交互,和第二个用户的不同词。

我应该使用 Firebase 匿名用户登录吗?有什么简单的我没想到的吗?谢谢!

0 投票
0 回答
52 浏览

django - Django 路由返回 AnonymousUser 错误,即使路由权限保持 IsAuthenticated

用户扩展 AbstractBaseUser。UserViewSet 扩展了 ModelViewSet。

我的路线

但是在向路由发送请求后,返回错误“AnonymousUser”对象没有属性“_meta”。

如果权限保持 IsAuthenticated,anonymousUser 如何使用此路由;

0 投票
2 回答
445 浏览

mongodb - Spring-security 阻止匿名用户从 MongoDB 中提取数据

我有一个使用 Spring Security 的 Spring Boot Web 应用程序。index.html 页面包含对控制器的方法调用 (POST),该控制器将对象从 MongoDB 加载到 ArrayList 中并返回它,以便它可以显示在首页上。

似乎 Spring Security 正在阻止匿名用户的 POST 请求。如果我第一次登录所以调用“/loadContent”方法,然后注销,一切正常。在调用该方法之前,我确实传递了 CSRF 令牌。

我的“网络安全配置”:

0 投票
2 回答
2772 浏览

django - Django rest框架匿名用户总是经过身份验证

我正在尝试使用 django rest framework isauthenticated 权限和 TokenAuthentication API 方法来验证我的 Web API 方法:

基本上我应该总是在标题中设置授权,如:

"授权":"令牌 a26171d30745cc94bcd6ac42d9bc94e1d3992948"

此令牌基于 rest_framework.authtoken

错误是我可以在响应 200 中获取数据,甚至无需在标头中设置令牌,因为它返回的匿名用户是从 django 的后端进行身份验证的。

如何防止匿名用户通过身份验证并使用 django rest 框架为他们返回 403 响应错误

我很感激任何帮助

0 投票
2 回答
940 浏览

django - 将 Django-cookie sessionId 链接到 Channels 2.02 连接?

感谢大家阅读我的第一篇文章。使用 Django 2.02,Django-channels 2.02。

我希望将从前端发送到后端的信息存储到 Django 会话存储中。我的问题是,只要 WebSocket 打开,Django-channels 会话范围似乎只存储信息,但我需要它像 Django http-session 一样存储它。

第一个来自前端 index.html 的 javascript。

消费者.py

路由.py

视图.py

请告诉我这个问题是否广泛或我缺少相关信息。

0 投票
0 回答
221 浏览

django-2.0 - Django 2.0 - 允许匿名用户发布权限

我是 Django 新手,需要一些关于如何最好地在 django 2.0 中实现匿名用户的帮助。

目的

本质上,我正在尝试创建一个网站,用户可以在其中填写一些字段,然后可以将其拆分为子表。他们输入的信息只对他们自己可见,其他用户看不到。

问题

到目前为止,我发现如果您允许某人向数据库发布权限,那么他们应该是经过身份验证的用户。我的问题是我不想强迫人们注册只是为了使用这个应用程序。

问题

考虑到这一点,我查看了文档中的匿名用户,但我无法理解它。

  • 我应该创建自己的模型来扩展 AnonymousUser 吗?
  • 这种方法有哪些安全问题?
  • 如果用户关闭浏览器并重新打开,他们是否能够查看之前输入的信息?
  • 如果用户想在以后注册,是否可以保留他们的信息?

谢谢你的帮助