2017-12-20 40 views
1

ConstraintSecurityHandlerを使用してアプリを保護しようとしています。それはこれまでのところ素晴らしいです。ただし、特定のパスを除外したいと思います。特に、/api/で始まるパスは、通常のセキュリティ/ログイン(APIトークンで保護されています)を無視する必要があります。私は一致しないURLのJetty ConstraintMapping?

/* (that doesn't match one of the below) Requires view role /api/* Skips security handler /admin/* Requires admin role

のようなもの、これを達成する簡単な方法がありますが欲しいですか?

答えて

1

ConstraintSecurityHandlerは、サーブレット仕様のセキュリティ制約メカニズムを実装しています。

拘束されているパスの一覧です。それが重複した場合、最初の制約が勝ちます。

サーブレット仕様制約には、制約からパスを「除外」する概念がありません。

ConstraintMappingとして/api/*を実装すると、Constraint(ロールはなく、認証されていないなど)を実装できます。

+0

ああ、私はあなたが言っているのを見ます。ありがとう! –