Symfony 2 の重要な概念を理解するのに苦労しています。
私は、ユーザーが秘密の URL を使用して他の人に送信できるコンテンツを作成できる Web サイトに取り組んでいます。www.yoursite.com/{secret-identifier-string} のようなもの。
これを次のように行う予定です。
- ユーザーのコンテンツを永続化します。
- 双方向の暗号化方式 ( など
mcrypt_encrypt
) を使用して、コンテンツ ID と作成タイムスタンプ (または追加の安全機能として、二度と変更されないその他のコンテンツ) を含む識別子文字列を作成します。 - リンクを作成し、それをユーザーに表示して配布します
- URL が呼び出されるたびに、識別子文字列が復号化されます。指定されたタイムスタンプがコンテンツ ID 行の対応する値と一致する場合、ページが表示されます。
私の質問は次のとおりです。
- これは一般的に良い手順だと思いますか?
- Symfony2 の外では
getIdentifierString()
、 やのようなヘルパー メソッドを作成しますgetContentPageLink()
。対応するコードを Symfony2 のどこに配置すればよいですか? エンティティクラス内に属していますか? その場合、暗号化にサービス クラスを使用しているため、問題が発生しています。このサービスはコントローラーでのみ使用できます。
どうもありがとう!