如何从servicestack basic authentication(位于/auth/basic)请求会话?
我使用第一个示例设置了具有基本身份验证的servicestack服务,如下所示: 这将自动设置路由:/auth/basic 但是,我找不到关于如何将请求格式化到此URL的任何信息或示例(Variables/GET/POST/Auth Header,等等) 我能够使用基本的身份验证凭据访问一个简单的服务,因此它们是活动的和正确的 我没有插入自定义身份验证,只有基本身份验证 我试过:如何从servicestack basic authentication(位于/auth/basic)请求会话?,authentication,
servicestack,basic-authentication,Authentication,
servicestack,Basic Authentication,我使用第一个示例设置了具有基本身份验证的servicestack服务,如下所示: 这将自动设置路由:/auth/basic 但是,我找不到关于如何将请求格式化到此URL的任何信息或示例(Variables/GET/POST/Auth Header,等等) 我能够使用基本的身份验证凭据访问一个简单的服务,因此它们是活动的和正确的 我没有插入自定义身份验证,只有基本身份验证 我试过: 使用JsonServiceClient通过GET或Json-POST将用户名和密码变量发送到/auth/basi
- 使用JsonServiceClient通过GET或Json-POST将用户名和密码变量发送到/auth/basic,同时使用和不使用还包含user&pass的auth头
- 使用浏览器发送带有用户/通行证URL参数的GET请求,或作为
http://user:pass@localhost:123/auth/basic
- 调用/auth/basic服务的正确方法是什么?我将以servicestack客户端API为例,说明甚至是原始http请求
- 如何完全禁用/auth服务
非常感谢。在apphost配置中添加以下内容似乎可以达到目的
//Disable most things, including SOAP support, /auth and /metadata routes
SetConfig(new EndpointHostConfig()
{
EnableFeatures = Feature.Json | Feature.Xml
});
然而,我对/auth的作用有点怀疑,因为它返回一个空响应,而大多数路由返回404
那么,这真的会禁用/auth功能吗?与中一样,如果有人向/auth/credentials发出了正确的请求,它还会返回空响应吗?调用/auth/basic服务的正确方法是什么?我将以servicestack客户端API为例,说明甚至是原始http请求强>
var client = new JsonServiceClient("http://localhost:56006/api");
var resp = client.Post(new Auth() { UserName = "TestUser", Password = "Password" });
- 这假设您还注册了
和ICacheClient
(并添加了用户帐户)IAuthUserRepository
/auth/basic?format=JSON
{
"UserName": "admin",
"Password": "test"
"RememberMe": true
}
如何完全禁用/auth服务?
不要将AuthFeature
插件添加到配置中
你也可以
谢谢你的帮助。添加BasicAuthentication(对于每个请求身份验证),AuthFeature/sessions将自动添加。问题是,在不禁用每请求身份验证的情况下,如何禁用/auth会话功能?您不能--
AuthFeature
插件注册SessionFeature
插件并使用它。对于不带会话的每次调用的基本身份验证,您可以编写自定义的RequestFilterAttribute
实现,并使用此自定义的[BasicAuthenticate]
属性装饰您的服务。
Plugins.RemoveAll(x => x is AuthFeature);