ユーザーが複数ある場合にログインできる許可された場所のリストを作成することを計画していますが、現在、ユーザーがログインするまでこれを行うことはできません。ユーザーが正常に認証されると、リストが取得されます。
役割のリストと照合してユーザーの数を数える方法を誰かが知っているかどうか疑問に思います。リストに複数の一致がある場合は、配列でリストを返します。
この記事にあるhasRoleを使用することを考えていますが、xmlとして保存されている別のリストと比較する方法がわかりません。
何か案は?
ユーザーが複数ある場合にログインできる許可された場所のリストを作成することを計画していますが、現在、ユーザーがログインするまでこれを行うことはできません。ユーザーが正常に認証されると、リストが取得されます。
役割のリストと照合してユーザーの数を数える方法を誰かが知っているかどうか疑問に思います。リストに複数の一致がある場合は、配列でリストを返します。
この記事にあるhasRoleを使用することを考えていますが、xmlとして保存されている別のリストと比較する方法がわかりません。
何か案は?
何が欲しいのか正確にはわかりませんが、ユーザーの権限を取得するには、最初に電話してください
Authentication a = SecurityContextHolder.getContext().getAuthentication();
その後、あなたは呼び出すことができます
Set<String> roles = AuthorityUtils.authorityListToSet(a.getAuthorities());
これにより、文字列のセットとしての役割が与えられ、必要に応じて確認またはカウントできます。
認証されていないユーザーのロールを取得する場合は、ロールへのユーザーの割り当てを保存するストレージにアクセスする必要があります。
ユーザーとロールをLDAPに保存する場合は、そのLDAPを照会する必要があります。