現在、新しい http4s サーバーをセットアップしていて、認証/承認メカニズムを調べているところ、TSec が見つかりました。
TSec のドキュメントとこのサンプル コードを調べた後、リソースごとに承認を実装する方法がわかりませんでした。
たとえば、次のようにして管理者ユーザーを承認できるとします (上記の例から抜粋)。
TSecAuthService.withAuthorization(AdminRequired) {
case request @ GET -> Root / "account" asAuthed user =>
Ok()
}
しかし、パスに基づいて特定のアカウントの管理者ユーザーを承認するにはどうすればよいですか:
GET -> Root / "account" / AccountId(accid)
特定のアカウント (つまり、accid
) の管理者ユーザーのみが許可されるようにしますか?
ここに記載されているいくつかのインスタンスを調べましたが、私の要件に合わないようです。