`
- 浏览:
864339 次
- 性别:
- 来自:
上海
-
使用Acegi 1.0获取用户信息
java 代码
- import org.acegisecurity.Authentication;
- import org.acegisecurity.context.SecurityContext;
- import org.acegisecurity.context.SecurityContextHolder;
- import org.acegisecurity.ui.WebAuthenticationDetails;
- import org.acegisecurity.userdetails.UserDetails;
-
- public class ThreadLocaTest {
-
-
-
-
-
-
- public static String getUsername() {
- SecurityContext ctx = SecurityContextHolder.getContext();
- if (ctx != null) {
- Authentication auth = ctx.getAuthentication();
- if (auth != null) {
- Object principal = auth.getPrincipal();
- if (principal instanceof UserDetails) {
- return ((UserDetails) principal).getUsername();
- } else {
- return principal.toString();
- }
- }
- }
- return null;
- }
-
-
-
-
-
-
- public static String getPassword() {
- SecurityContext ctx = SecurityContextHolder.getContext();
- if (ctx != null) {
- Authentication auth = ctx.getAuthentication();
- if (auth != null) {
- Object principal = auth.getPrincipal();
- if (principal instanceof UserDetails) {
- return ((UserDetails) principal).getPassword();
- } else {
- return null;
- }
- }
-
- }
- return null;
- }
-
-
-
-
-
-
- public static String getSessionID() {
- SecurityContext ctx = SecurityContextHolder.getContext();
- if (ctx != null) {
- if (ctx instanceof SecurityContext) {
- SecurityContext sc = (SecurityContext) ctx;
- Authentication auth = sc.getAuthentication();
- if (auth != null) {
- Object details = auth.getDetails();
- if (details instanceof WebAuthenticationDetails) {
- return ((WebAuthenticationDetails) details)
- .getSessionId();
- } else {
- return null;
- }
- }
- }
- }
- return null;
- }
- }
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
Acegi最新版(v1.0.doc)可能是关于Acegi Security的文档,这是一个Spring框架的前身,用于提供身份验证和授权服务。尽管Acegi已被Spring Security取代,但了解其基本概念和工作原理对理解现代Web应用的安全性仍有帮助...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...
使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。 Java的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用...