mirror of
https://github.com/BrenBroZAYT/gameyfin.git
synced 2026-06-13 16:40:01 +00:00
Fix public access permissions
This commit is contained in:
+3
-1
@@ -17,7 +17,9 @@ class DynamicPublicAccessAuthorizationManager(
|
||||
authentication: Supplier<Authentication?>?,
|
||||
`object`: RequestAuthorizationContext?
|
||||
): AuthorizationDecision? {
|
||||
val allow = config.get(ConfigProperties.Libraries.AllowPublicAccess) == true
|
||||
val auth = authentication?.get()
|
||||
val allow = (auth?.isAuthenticated == true && auth.principal != "anonymousUser") ||
|
||||
config.get(ConfigProperties.Libraries.AllowPublicAccess) == true
|
||||
return AuthorizationDecision(allow)
|
||||
}
|
||||
}
|
||||
@@ -44,13 +44,15 @@ class SecurityConfig(
|
||||
.requestMatchers("/reset-password").permitAll()
|
||||
.requestMatchers("/accept-invitation").permitAll()
|
||||
.requestMatchers("/public/**").permitAll()
|
||||
.requestMatchers("/images/**").permitAll()
|
||||
|
||||
// Dynamic public access for certain endpoints
|
||||
auth.requestMatchers("/game/**").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
auth.requestMatchers("/").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
.requestMatchers("/game/**").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
.requestMatchers("/library/**").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
.requestMatchers("/search/**").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
.requestMatchers("/download/**").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
.requestMatchers("/images/**").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
.requestMatchers("/images/**").access(DynamicPublicAccessAuthorizationManager(config))
|
||||
}
|
||||
|
||||
http.sessionManagement { sessionManagement ->
|
||||
|
||||
Reference in New Issue
Block a user