簡體   English   中英

Java-如何獲取SAML斷言用戶屬性

[英]Java - How to get SAML Assertion User Attributes

我的Java應用程序和ADFS 2.0之間有一個saml sso連接。 連接工作良好,但是我很難在Java servlet中獲得斷言用戶屬性,例如email。

我的SAML響應的斷言部分:

在此處輸入圖片說明

我嘗試了類似的方法,但是它返回一個空值。 基於此鏈接中的主題: https : //help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/zh-CN/9e2e0d7e91cc44e79901a756bf7b2d88.html

import com.sap.security.um.user.PersistenceException;
import com.sap.security.um.user.UnsupportedUserAttributeException;
import com.sap.security.um.user.User;
import com.sap.security.um.user.UserProvider;
import com.sap.security.um.service.UserManagementAccessor;

@Resource
private UserProvider userProvider;

User user = null;
String email = "";
try {
    // Read the currently logged in user from the user storage
    user =  userProvider.getUser(request.getRemoteUser());
    email = "Email: " + user.getAttribute("email");
} catch (UnsupportedUserAttributeException | PersistenceException e) {
    e.printStackTrace();
}

預先感謝您的幫助。

我的問題解決了。 這是一個特定的配置問題。 該解決方案可在此處訪問感謝Codebrane。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM