4

ユーザーの役割を編集するときはいつでも、ユーザーはログアウトしてから再度ログインして変更を確認する必要があります。ユーザーを昇格させる場合、ユーザーは再度サインインするまで追加の権限が表示されないため、問題はありません。ただし、降格が発生した場合でも、ユーザーはセキュリティリスクを課す既存の役割を維持します。不正な従業員の管理者ユーザーを取り消しても、ログアウトするまで何でもできるようにする(システムの妨害など)ことを想像してみてください。

特定のユーザーに関連するすべてのセッションまたはトークンを無効にすることは可能ですか?ログアウトせずにユーザーの役割を動的に更新する別の方法がある場合は、ぜひ聞いてみてください。

明確にするために、私は現在ログインしているユーザーのセッション/トークンを無効にしようとはしていません。

前もって感謝します!

4

1 に答える 1

2

symfonyはシリアル化されたトークンオブジェクト_security_match_firewall_nameをセッションのキーの下に保存します。シリアル化を解除し、ロールをフィルタリングしてから、再度保存することができます。セッション値の読み取り/保存には、を使用できますPdoSessionStorage。ユーザーセッションを追跡するために、追加のテーブルを作成する必要がある場合があります。

于 2012-03-10T19:37:21.073 に答える