0

未登録ユーザーによるアクセスが拒否されることになっているフォーラムを作成しています。そこで許可されていないユーザーに対して、例外ではなく、適切なエラーメッセージを表示したいと考えています。Neos 2.0 でこれを達成するにはどうすればよいですか?

読み取りアクセスと書き込みアクセスの両方を拒否する必要があります。フォーラムがあるノードへのアクセスを拒否する方が簡単でしょうか? しかし、それにはノードパスのハードコーディングが必要ではないでしょうか?

現在Policy.yaml

privilegeTargets:

  'TYPO3\Flow\Security\Authorization\Privilege\Method\MethodPrivilege':

    'My.Package:PostControllerLoggedInActions':
        matcher: 'method(My\Package\PostController->(index|new|create)Action(.*))'

roles:

  'TYPO3.Flow:Everybody':
    privileges:
      -
        privilegeTarget: 'My.Package:PostControllerLoggedInActions'
        permission: DENY

  'My.Package:User':
    privileges:
      -
        privilegeTarget: 'My.Package:PostControllerLoggedInActions'
        permission: GRANT

編集: カスタム 404 ページを作成する方法 (特に) に関するいくつかのスライドを以下に示します: https://speakerdeck.com/aertmann/tasty-recipes-for-every-day-neos

編集 2 : フロー例外ハンドラを使用しますか?

4

1 に答える 1

0

root で設定を試みることができますConfiguration/Settings.yaml。ステータスコード(例のように)または例外クラスでそれを行うことができます:

TYPO3:
  Flow:
# you have already persistence
# and maybe other stuff under flow
# just add it below them but still under TYPO3.Flow
    error:
      exceptionHandler:
        renderingGroups:
          accessRestricted:
            matchingStatusCodes: [ 401, 403]
            options:
              templatePathAndFilename: 'resource://TYPO3.Neos/Private/Templates/Error/Index.html'
              layoutRootPath: 'resource://TYPO3.Neos/Private/Layouts/'
              format: 'html'
              variables:
                errorTitle: 'Restricted Area'
                errorDescription: 'Go home boy.'
于 2015-04-21T11:57:41.533 に答える