繁体   English   中英

Spring Security如何处理HTTP基本身份验证?

[英]How does Spring security handle http basic authentication?

我已经以RESTful方式公开了一些Web服务。 在我的第一个表单中,用户需要登录,并且登录凭证以以下方式在Authorization标头中发送:

Authorization :Basic adajajffjfksal

现在,在我的security-context.xml中,通过以下方式保护了URL:

<http pattern="/login" create-session="stateless">
        <intercept-url pattern="/**" access="ROLE_AUTHENTICATED" />
        <http-basic />
</http>

成功登录后,我还有另一种形式,一些参数将从中代表用户传递给服务器。 会创建会话吗? 我是否必须再次在“授权”标头中传递用户凭据? 由于“ create-session =“ stateless”',此登录请求是否为无会话?

这段security-context.xml几乎没有意义

<http pattern="/login" create-session="stateless">
        <intercept-url pattern="/**" access="ROLE_AUTHENTICATED" />
        <http-basic />
</http>

它包含pattern="/login" ,因此Spring Security仅将唯一的URL /login视为整个块。 换句话说,任何其他URL都会将其忽略。

它包含create-session="stateless" ,因此它不会创建任何会话。

结果是,如果您使用适当的基本身份验证标头显式调用/login URL,则将成功进行身份验证,并且会话将立即关闭。 因此,您将不会通过以下请求的身份验证。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM