somemo programming etc.

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【symfony】クレデンシャルとsecurity.yml【1.0】

前回調べたときに出てきたcredentialについてのメモです。

security.yml

これも前に出てきたauthenticatedと関連する設定ファイルで、セキュア属性をonにするとauthenticatedの状態によってアクセスすることができなくなります。

これに加えて、credentialもこのYymlで設定できるようです。詳しい設定は参考リンクを参照してください。配列記法によるAND,OR設定ができます。

利点

設定ファイルのみで管理できるようになります。自分が携わっていたプロジェクトでは、画面ごとにIDがふってあり、その画面IDに対して閲覧できるユーザの種類が決まっていました。これをyml(連想配列)や、DBで管理していましたので、どうしてもアクションが実行されてからの判断になるため不便な点もありました。

credentialによる制限であれば、アクションを実行するフィルターの前に制限をかけられるので、特に気にすることはありませんし、エラー画面への遷移実装なども行わずに済みます。

また、権限が増えたとしても、フィルターを拡張することでカバーできる感じもします。フレームワークのCの部分を知ることは、とてもためになりますね。

参考