Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

提案:自前のルーターを、定番のルーターに変更 #95

Closed
uzulla opened this issue Aug 19, 2020 · 2 comments
Closed

提案:自前のルーターを、定番のルーターに変更 #95

uzulla opened this issue Aug 19, 2020 · 2 comments
Assignees

Comments

@uzulla
Copy link
Collaborator

uzulla commented Aug 19, 2020

現状、ifや正規表現を用いたルーティングを行っているが、分かりづらいので一般的なルーター(nikic/fastrouteなど)への置換を行い、宣言的にしたい。

課題

現在のコードは(特に)管理画面においてStrutsスタイルの「クラス」「アクション」をURLから取る設計になっているが、パターンによってDenyする格好となっており、存在するすべてのRouteが把握できないことや、本当に危険なパターンがDenyできているかが怪しいです。Denyリスト方式より、Allowリスト方式のほうがセキュリティ的にも望ましいといえます。

デメリット

デメリットとして、今後はクラスやアクション追加時にルート定義をなんらか追加する必要があるが、大した手間ではないかと思われる。

現在、一部のルートはクエリパラメーターmode=Class&process=Actionのような形式になっているが、/mode/actionのような一般的な形式に一部書き換える必要がある。(そうしないことは技術的に可能ではあるが、そうしないと、宣言的にならないため)

つまり、URLが変わる。ただ、基本的にそのようなものを多用しているのは管理画面なので、ブログとしてのパーマリンクを壊すことはないのではないかとおもわれる。

@uzulla uzulla changed the title 自前のルーターを、定番のルーターに変更 提案:自前のルーターを、定番のルーターに変更 Aug 24, 2020
@fc2dev
Copy link
Contributor

fc2dev commented Aug 25, 2020

@uzulla
fastRouteを採用される場合は、ライセンス体系が異なるため、
必要な表示をReadmeに入れる前提であれば、採用していただいて問題ありません。

@uzulla
Copy link
Collaborator Author

uzulla commented Oct 28, 2020

アプリ全体を理解するにつれ、アクション(とりうるURLと、呼ばれるメソッド)が明確になれば課題は解決できるようにおもわれ、急ぎ対応する必要はなさそうと判断しましたので一度クローズします。
(課題を解決するのに、ルーター導入を必須としなくてよいと判断できたので)

#108 (comment)
の方向ですすめて、全アクションが明確にできた後、改めて導入を検討をしたいと思います。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants