问题标签 [servicestack-auth]

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 回答
56 浏览

azure - azure 上的 servicestack twitter 身份验证

我的本地机器上有一个工作应用程序,可以使用 SQl 和 raven auth 插件进行正常授权。

当我尝试通过转到 /auth/twitter 在 azure 应用程序上测试身份验证时,我最终进入了身份验证循环。

这是完全相同的代码(除了回调和重定向 url 指向天蓝色应用程序)

这应该在 Azure 上工作吗?有什么方法可以知道为什么重定向最终会进入循环?twitter 上有没有调试输出?

0 投票
2 回答
1464 浏览

redis - 如何将我的自定义 ServiceStack 身份验证提供程序与 Redis 一起使用?

我已经CredentialsAuthProvider为我的身份验证实现了一个自定义,并将其与内存会话存储中的默认值一起使用。

现在我尝试将会话存储更改为 Redis 并将其添加到我的Configure()方法中AppHost

现在,当我进行身份验证时,我可以看到urn:iauthsession:...我的 Redis 服务器中添加了一个密钥。[Authenticate]但是所有具有该属性的路由都会401 Unauthorized出错。

是这样实现的CustomCredentialsAuthProvider

服务栈版本:3.9.71

编辑 :

我试图覆盖该CredentialsAuthProvider IsAuthorized方法但没有成功。

但是我从 继承了我的会话对象AuthUserSession,它也有一个IsAuthorized方法。当我从此方法返回 true 时,Redis 会话确实与Authenticate属性一起工作。

0 投票
1 回答
96 浏览

servicestack - 测试中的 ServiceStack 身份验证

我希望能够使用基本身份验证或凭据身份验证来测试我的 Servicestack 端点,但不想为每个测试都登录、保存 ss-id 然后使用它来实际运行端点。

理想情况下,我将能够使用类似的东西创建一个用户(这已经使用凭据身份验证)http://devapi.someapi.com/register?username=blah&password=test&x-http-method-override=POST

然后实际上使用类似以下内容的安全网址:

http://devapi.someapi.com/users/123?username=blah&password=test

有这样的东西吗?

0 投票
1 回答
1448 浏览

servicestack - 缺少 ServiceStack.ServiceInterface dll

我正在尝试使用ServiceStack 的身份验证插件。我为 ServiceStack 4.0.11 添加了 NuGet 包,但我找不到包含 AuthService 和 Auth 类的 DLL ServiceStack.ServiceInterface。我认为身份验证插件依赖于这个 DLL。如何将 ServiceStack.ServiceInterface 添加到我的项目中?

0 投票
0 回答
62 浏览

servicestack - Servicestack 跨站点身份验证难题

我有一个 MVC 网站(单页 JS 应用程序类型的东西),如果需要,可以安装 SS NuGet。

我有一个 API,目前(并且非常成功)使用 SS auth 插件来允许我通过 twitter、fb 等对用户进行身份验证。这个 API 目前允许 PHP 前端获得访问权限。

我希望 MVC 站点能够以与 PHP 站点相同的方式进行身份验证,但我希望它以更 MVC/SS 的方式发生 - 而不是仅检查 ss-id 并且如果它不存在则重定向到登录页。我不是 PHP 开发人员,但我的理解是,当用户在 PHP 站点上请求页面时 - 它会检查 cookie 中是否存在 ss-id - 如果有,则用户已经通过身份验证,如果没有然后用户未通过身份验证,并被推送到 PHP 站点上的 /login,该站点具有通过 twitter、fb 等按钮进行身份验证。

我怎样才能做到这一点?我可以将 SS Authenticate 属性添加到控制器,但这是否足够?

所以工作流程是;

用户访问http://somesite.com

他们没有登录,所以他们被重定向到http://somesite.com/login

他们单击该页面上的 twitter 登录按钮并被重定向到

http://api.somesite.com/auth/twitter将它们转发到 twitter 以进行身份​​验证

一旦通过身份验证,它们将通过有效会话发送回http://somesite.com

现在 - 我的问题是,我可以像这样对它们进行身份验证吗?

如果是这样,最好的方法是什么?我只想将[Authenticate]属性添加到控制器并完成它。如果我将其设置RavenUserAuthRepository为查看与 Db 的 API 相同的位置并添加[Authenticate]属性似乎还不够?

[另一个编辑]

所以 - 我现在已经将插件添加到 MVC 站点,以便我可以访问 somesite.com/auth/twitter 并且它使用与RavenUserAuthRepositoryapi 使用相同的 - 所以它共享一个数据库。

我创建了一个单独的 twitter 应用程序,以便它可以正确重定向。

一切似乎都在登录方面工作。除了当我尝试使用它去控制器[Authenticate]时 -TryAuthenticate里面RavenUserAuthRepository永远不会被调用......

对于工作流程的其余部分 - 当它从 twitter 回来并通过身份验证时,它正在调用RavenUserAuthRepository诸如GetUserAuth

0 投票
1 回答
129 浏览

servicestack - 关闭对 ServiceStack 自定义凭据提供程序的 GET 访问

我知道我在某个时候遇到过一个帖子,但我似乎找不到任何东西。似乎默认情况下,ServiceStack 允许通过 GET 或 POST 访问 /auth。GET 不是我们在生产中想要的东西。

我需要关闭对 /auth 的 GET 访问。有任何想法吗?

0 投票
0 回答
70 浏览

xamarin.ios - servicestack 用户身份验证无法授权

这是全局 asax 文件,我使用此代码进行身份验证

在我尝试的单点触控阶段

或客户端 = new JsonServiceClient (" http://sampleurl.com/api ) {Username="Hal", Password="password");

它给了我请求超时问题

有更新吗?

谢谢

0 投票
1 回答
91 浏览

authentication - Is there a way to disable the 'remember me' feature in ServiceStack?

Obviously, not submitting that field to the login service works but anyone can override that. Is there a way to disable this feature on the server side entirely?

0 投票
1 回答
89 浏览

c# - ServiceStack 身份验证重定向如何工作?

我正在尝试遵循来自http://bootstrapapi.apphb.com/的 Bootstrap ServiceStack 代码

我可以注册一个新用户,但很快我会在我重定向到的方法中做我想做的一切(在我的表上创建一个扩展UserAuth表的新用户)CreateUserAuth()CustomUserAuth http://localhost:50447/api/register

我想回到Home控制器...

实现此目的的简单方法是什么?

在文档中,在 Authentication 下,这不是很明确,我使用的是迄今为止的最新版本:v4.0.30 并且我正在实现一个 custom CredentialsAuthProvider.

0 投票
1 回答
52 浏览

c# - 在 CustomUserAuthRepository.CreateUserAuth 中取回 userId

作为 ServiceStack 的一个非常基本的用户,我尝试尝试一下,但有几件事我似乎无法正确理解......

我使用此代码是为了使用 NHibernate 作为 ServiceStack 身份验证中的数据层:

https://gist.github.com/balexandre/f1217ae8e2a2b1045d47

我已经修改了一点CreateUserAuth以在我自己的表中创建一个新用户(因为我确实需要更多的用户数据并且元数据选项还不够),我已经在第 201 行扩展到此代码:

https://gist.github.com/balexandre/f1217ae8e2a2b1045d47#file-customuserauthrepository-cs-L201

newUser被发回,我确实需要获取 userId ( newUser.Id),这样我就可以在我的表中创建一个具有与 UserAuth 相同的 userID 的新用户(以便在 CustomUserSession.cs 中正确保存/编辑并填充我的用户登录信息,如几个示例所示)。

如何获得正确的用户 ID?

我真的认为我可以将 UserAuth 对象附加到我的自定义用户(如(newLocalUser.UserAuthInfo)),但我最终总是在数据库中拥有 User.Id == 0

并接听电话newUser.IdSession.Save(new UserAuthNHibernate(newUser))总是0如此。

你们如何将新生成的 UserAuth 的 UserId 附加到您自己的表中?或者您只是使用电子邮件地址?


原始问题可用Google Groups