在SAML Spring Boot打印中使用的主体唯一ID不是ISE ID

时间:2018-07-04 08:56:45

标签: spring-security saml-2.0 okta

我创建了一个spring boot saml应用程序,并且我使用okta作为标识提供程序。

它工作正常,但是当我打印主要用户时,它给了我

org.opensaml.saml2.core.impl.NameId@70ead80eb

代替用户名。这是我的控制器:

@Controller
public class IndexController {

    @RequestMapping("/")
    public String index(Model model) {
        Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
        String currentPrincipalName = authentication.getName();
        model.addAttribute("name", currentPrincipalName);
        return "index";
    }
}

这是我的Thymeleaf模板:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Spring Security SAML Example</title>
</head>
<body>
<p>You are successfully logged in <span style="font-weight:bold" th:text="${name}"></span></p>
</body>
</html>

使用SAML时如何从Spring Security获取用户名?

0 个答案:

没有答案