Magnolia 无头登录

Posted

技术标签:

【中文标题】Magnolia 无头登录【英文标题】:Magnolia headless login 【发布时间】:2021-12-22 22:33:04 【问题描述】:

我需要采取哪些步骤来实现用户登录?

我正在使用 PUR 和 REST 模块。我能够使用 MgnlContext.login 使用 REST 端点成功登录,但如果我尝试访问另一个端点,我会得到 401。

到目前为止我所拥有的:

CredentialsCallbackHandler handler = new PlainTextCallbackHandler(username, password.toCharArray(), "public");
SecuritySupport securitySupport = Components.getComponent( SecuritySupport.class );
LoginResult result = securitySupport.authenticate(handler, SecuritySupportBase.DEFAULT_JAAS_LOGIN_CHAIN);
MgnlContext.login(result.getSubject());

我认为我需要获取会话 cookie(在 web.xml 中配置)以与任何后续请求一起发送,但我在端点中的何处获取它?我需要自己保存吗?还是完全是另外一回事?

Magnolia 和前端都在 localhost 上运行,但在不同的端口上。

【问题讨论】:

【参考方案1】:

Magnolia 一直在发送 cookie(作为 Set-Cookie 标头),只是从未保存过。我必须手动处理它,以便我的 FE 设置 cookie 并在每个后续请求中将其发送回。

【讨论】:

以上是关于Magnolia 无头登录的主要内容,如果未能解决你的问题,请参考以下文章

如何通过无头 chrome 管理登录会话?

如何在 Magnolia CMS 中向登录用户显示页面的某些内容部分

如何在 Magnolia CMS Marketing Tag 中登录用户 ID

Raspbian镜像无头烧录

Magnolia cms 中的并发会话

在木兰中获取用户名