mirror of
https://github.com/Stirling-Tools/Stirling-PDF.git
synced 2025-04-19 11:11:18 +00:00
23 lines
852 B
Java
23 lines
852 B
Java
package stirling.software.SPDF.config.security;
|
|
|
|
import org.springframework.security.core.userdetails.UserDetails;
|
|
import org.springframework.security.oauth2.core.user.OAuth2User;
|
|
|
|
import stirling.software.SPDF.config.security.saml2.CustomSaml2AuthenticatedPrincipal;
|
|
|
|
public class UserUtils {
|
|
public static String getUsernameFromPrincipal(Object principal) {
|
|
if (principal instanceof UserDetails detailsUser) {
|
|
return detailsUser.getUsername();
|
|
} else if (principal instanceof OAuth2User oAuth2User) {
|
|
return oAuth2User.getName();
|
|
} else if (principal instanceof CustomSaml2AuthenticatedPrincipal saml2User) {
|
|
return saml2User.name();
|
|
} else if (principal instanceof String stringUser) {
|
|
return stringUser;
|
|
} else {
|
|
return null;
|
|
}
|
|
}
|
|
}
|