Please describe the reproduction procedure in as much detail as possible. / 再現手順を、可能な限り詳細に記載してください。
Exmentにログインした状態で役割の「テーブル管理」の権限がないテーブルの公開フォームを参照した場合に発生します。
Exmentからログアウトした場合は、権限チェックがかからないようで問題なく公開フォームが表示されます。
Version / 発生バージョン
Please describe version. / ご利用のバージョンを記載してください。
Version v5.0.11
Error log / エラーログ
If possible, paste error log. Log's path is "storage/logs/laravel.log". / 可能であれば、ログを貼り付けてください。ログのパスは"storage/logs/laravel.log"です。
[2024-02-29 13:54:15] local.ERROR: {"userId":417,"exception":"[object] (Exceedone\Exment\Exceptions\PublicFormNotFoundException(code: 0): at C:\WEB-DB\Exment\vendor\exceedone\exment\src\Controllers\PublicFormController.php:81)
[stacktrace]
If possible, paste the screenshot. / 可能であれば、スクリーンショットを貼り付けてください。
Additional context / その他
Add any other context about the problem here. / その他に記載すべき内容がありましたら、ご記載ください。
ログ等の情報からおそらく、ログイン状態では該当テーブルの権限をチェックするような挙動になっているのでは無いかと思います。
ログアウトした状態で閲覧できるので、仕様であれば改善いただけますと幸いです。
Describe the bug / バグの説明
A clear and concise description of what the bug is. / バグの内容のかんたんな説明を記載してください。 https://github.com/exceedone/exment/issues/1206 上記で報告したものの再現方法がわかりましたので改めて記載します。
公開フォームアクセス時に”フォームがありませんでした。URLが誤っているか、有効期限でない場合があります”と表示されページに到達できない
To Reproduce / 再現手順
Please describe the reproduction procedure in as much detail as possible. / 再現手順を、可能な限り詳細に記載してください。 Exmentにログインした状態で役割の「テーブル管理」の権限がないテーブルの公開フォームを参照した場合に発生します。 Exmentからログアウトした場合は、権限チェックがかからないようで問題なく公開フォームが表示されます。
Version / 発生バージョン
Please describe version. / ご利用のバージョンを記載してください。 Version v5.0.11
Error log / エラーログ
If possible, paste error log. Log's path is "storage/logs/laravel.log". / 可能であれば、ログを貼り付けてください。ログのパスは"storage/logs/laravel.log"です。
[2024-02-29 13:54:15] local.ERROR: {"userId":417,"exception":"[object] (Exceedone\Exment\Exceptions\PublicFormNotFoundException(code: 0): at C:\WEB-DB\Exment\vendor\exceedone\exment\src\Controllers\PublicFormController.php:81) [stacktrace]
0 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Controller.php(54): Exceedone\Exment\Controllers\PublicFormController->index(Object(Illuminate\Http\Request), '57ad4fd0-d262-1...')
1 C:\WEB-DB\Exment\vendor\exceedone\exment\src\Controllers\PublicFormController.php(69): Illuminate\Routing\Controller->callAction('index', Array)
2 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\ControllerDispatcher.php(43): Exceedone\Exment\Controllers\PublicFormController->callAction('index', Array)
3 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Route.php(260): Illuminate\Routing\ControllerDispatcher->dispatch(Object(Illuminate\Routing\Route), Object(Exceedone\Exment\Controllers\PublicFormController), 'index')
4 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Route.php(205): Illuminate\Routing\Route->runController()
5 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Router.php(798): Illuminate\Routing\Route->run()
6 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(141): Illuminate\Routing\Router->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
7 C:\WEB-DB\Exment\vendor\exceedone\laravel-admin\src\Middleware\Session.php(18): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
8 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Encore\Admin\Middleware\Session->handle(Object(Illuminate\Http\Request), Object(Closure))
9 C:\WEB-DB\Exment\vendor\exceedone\exment\src\Middleware\BootstrapPublicForm.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
10 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Exceedone\Exment\Middleware\BootstrapPublicForm->handle(Object(Illuminate\Http\Request), Object(Closure))
11 C:\WEB-DB\Exment\vendor\exceedone\laravel-admin\src\Middleware\Bootstrap.php(15): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
12 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Encore\Admin\Middleware\Bootstrap->handle(Object(Illuminate\Http\Request), Object(Closure))
13 C:\WEB-DB\Exment\vendor\exceedone\laravel-admin\src\Middleware\Pjax.php(24): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
14 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Encore\Admin\Middleware\Pjax->handle(Object(Illuminate\Http\Request), Object(Closure))
15 C:\WEB-DB\Exment\vendor\exceedone\exment\src\Middleware\Morph.php(20): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
16 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Exceedone\Exment\Middleware\Morph->handle(Object(Illuminate\Http\Request), Object(Closure))
17 C:\WEB-DB\Exment\vendor\exceedone\exment\src\Middleware\Initialize.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
18 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Exceedone\Exment\Middleware\Initialize->handle(Object(Illuminate\Http\Request), Object(Closure))
19 C:\WEB-DB\Exment\vendor\exceedone\exment\src\Middleware\Browser.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
20 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Exceedone\Exment\Middleware\Browser->handle(Object(Illuminate\Http\Request), Object(Closure))
21 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Auth\Middleware\Authenticate.php(44): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
22 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Auth\Middleware\Authenticate->handle(Object(Illuminate\Http\Request), Object(Closure))
23 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Middleware\SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
24 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Routing\Middleware\SubstituteBindings->handle(Object(Illuminate\Http\Request), Object(Closure))
25 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\VerifyCsrfToken.php(78): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
26 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle(Object(Illuminate\Http\Request), Object(Closure))
27 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\View\Middleware\ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
28 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\View\Middleware\ShareErrorsFromSession->handle(Object(Illuminate\Http\Request), Object(Closure))
29 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Session\Middleware\StartSession.php(121): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
30 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Session\Middleware\StartSession.php(64): Illuminate\Session\Middleware\StartSession->handleStatefulRequest(Object(Illuminate\Http\Request), Object(Illuminate\Session\Store), Object(Closure))
31 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Session\Middleware\StartSession->handle(Object(Illuminate\Http\Request), Object(Closure))
32 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
33 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle(Object(Illuminate\Http\Request), Object(Closure))
34 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Cookie\Middleware\EncryptCookies.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
35 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Cookie\Middleware\EncryptCookies->handle(Object(Illuminate\Http\Request), Object(Closure))
36 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
37 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Router.php(799): Illuminate\Pipeline\Pipeline->then(Object(Closure))
38 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Router.php(776): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
39 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Router.php(740): Illuminate\Routing\Router->runRoute(Object(Illuminate\Http\Request), Object(Illuminate\Routing\Route))
40 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Routing\Router.php(729): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
41 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(190): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
42 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(141): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
43 C:\WEB-DB\Exment\vendor\exceedone\exment\src\Middleware\ExmentDebug.php(15): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
44 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Exceedone\Exment\Middleware\ExmentDebug->handle(Object(Illuminate\Http\Request), Object(Closure))
45 C:\WEB-DB\Exment\vendor\exceedone\exment\src\Middleware\TrustProxies.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
46 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Exceedone\Exment\Middleware\TrustProxies->handle(Object(Illuminate\Http\Request), Object(Closure))
47 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
48 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull.php(31): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure))
49 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle(Object(Illuminate\Http\Request), Object(Closure))
50 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
51 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TrimStrings.php(40): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure))
52 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Foundation\Http\Middleware\TrimStrings->handle(Object(Illuminate\Http\Request), Object(Closure))
53 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
54 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle(Object(Illuminate\Http\Request), Object(Closure))
55 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
56 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle(Object(Illuminate\Http\Request), Object(Closure))
57 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Http\Middleware\TrustProxies.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
58 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(180): Illuminate\Http\Middleware\TrustProxies->handle(Object(Illuminate\Http\Request), Object(Closure))
59 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
60 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(165): Illuminate\Pipeline\Pipeline->then(Object(Closure))
61 C:\WEB-DB\Exment\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(134): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
62 C:\WEB-DB\Exment\public\index.php(55): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
63 {main}
"}
Screenshots / スクリーンショット
If possible, paste the screenshot. / 可能であれば、スクリーンショットを貼り付けてください。
Additional context / その他
Add any other context about the problem here. / その他に記載すべき内容がありましたら、ご記載ください。 ログ等の情報からおそらく、ログイン状態では該当テーブルの権限をチェックするような挙動になっているのでは無いかと思います。 ログアウトした状態で閲覧できるので、仕様であれば改善いただけますと幸いです。