flowpack/neos-frontendlogin

Neos 插件,演示了简单的前端登录

安装次数: 213 782

依赖项: 3

建议者: 0

安全性: 0

星标: 22

关注者: 12

分支: 18

开放问题: 4

语言:HTML

类型:neos 插件

4.2.1 2022-03-29 10:50 UTC

This package is auto-updated.

Last update: 2024-09-04 16:34:52 UTC


README

Neos 插件,演示了简单的 "前端登录"

免责声明

此包主要用于演示目的。您可以在生产应用中使用它,但如果您需要任何自定义行为/样式,则可能最简单的方法是创建自己的登录表单插件。它只是几个文件。

设置与使用

  • 将包安装到 Packages/Plugin/Flowpack.Neos.FrontendLogin(例如,通过 composer require flowpack/neos-frontendlogin
  • 登录 Neos 后端并创建一个新的页面 "登录"(例如,在 /login
  • 在该页面上插入新的插件 前端登录表单
  • (可选)创建一个 "成员区域" 页面(例如,在 /members)及其子页面,并按以下说明保护它
  • 发布所有更改
  • 使用 UI 创建新的前端用户(在 "管理 > 前端用户")
  • 或者,您可以使用 neos.neos:user:create 命令(例如 ./flow user:create --authentication-provider "Flowpack.Neos.FrontendLogin:Frontend" --roles "Flowpack.Neos.FrontendLogin:User"

现在,您应该可以通过导航到 /login.html 来测试前端登录

受保护成员区域

如果您想创建一个仅供已验证前端用户可见的 "成员区域",请将以下 Policy.yaml 添加到您的站点包中

privilegeTargets:

  'Neos\ContentRepository\Security\Authorization\Privilege\Node\ReadNodePrivilege':

    'Acme.YourPackage:MembersArea':
        # Replace <NodeIdentifier> with the node's identifier to be targeted (you can see the identifier in the "Additional info"
        # group in the Property Inspector of the Neos Backend)
      matcher: 'isDescendantNodeOf("<NodeIdentifier>")'


roles:

  'Flowpack.Neos.FrontendLogin:User':
    privileges:
      -
          # Grant "frontend users" access to the "Member area"
        privilegeTarget: 'Acme.YourPackage:MembersArea'
        permission: GRANT


  'Neos.Neos:Editor':
    privileges:
      -
          # Grant "backend users" to access the "Member area" - Otherwise those pages would be hidden in the backend, too!
        privilegeTarget: 'Acme.YourPackage:MembersArea'
        permission: GRANT

指定的节点及其所有子节点将隐藏给匿名用户!

注意:将 "Acme.YourPackage" 替换为您的站点包的包密钥,将 "<NodeIdentifier>" 替换为 "成员区域" 节点的节点标识符(如描述所述)。

重写模板路径到您的包

您可能需要根据需要修改模板。创建一个 Views.yaml 文件,并添加以下配置

-
  requestFilter: 'isPackage("Flowpack.Neos.FrontendLogin") && isController("Authentication") && isAction("index")'
  options:
    templatePathAndFilename: 'resource://Acme.YourPackage/Private/Templates/Authenticate/Index.html'

templatePathAndFilename 中的实际值调整为您的需要,并将 原始模板 复制到该位置,以便任意调整。

登录/注销后重定向

自 2.1 版本起,您可以在登录表单属性中指定用户登录和/或注销后要重定向到的页面。

提示:要重定向到外部 URL,您可以创建一个指向该 URL 的快捷节点,并将其指定为目标重定向选项。

用户管理 UI

用户管理 UI 可供管理员以及具有 Flowpack.Neos.FrontendLogin.Ui:UserAdministrator 角色的人员使用。

它允许使用 Flowpack.Neos.FrontendLogin:Frontend 身份验证提供者独家管理用户。

删除过期用户

可以使用 CLI 命令 user:deleteexpired 删除过期用户。

它将删除具有 Flowpack.Neos.FrontendLogin:Frontend 身份验证提供者的精确一个账户的所有用户。