2017-07-16 85 views
0

使用OpenAM SDK更改數據存儲區配置時,除密碼之外的任何操作都可以正常運行。即使我給出相關屬性「sun-idrepo-ldapv3-config-authpw」,密碼也會重置爲空字符串。我嘗試了很多情況:從屬性中刪除字段,並給出一組字符串。他們都沒有讓我的密碼完好無損!從OpenAM SDK更改LDAP數據存儲區配置

這裏是我的代碼部分:

fun setDataStoreConfig(realmName: String, storeName: String, newAttrs: Map<*,*>) { 
    val srvConf = ServiceConfigManager(IdConstants.REPO_SERVICE, getUserSSOToken()) 
    val orgConf = srvConf.getOrganizationConfig(realmName, null) 
    val subConf = orgConf.getSubConfig(storeName) 
    val attrs = subConf.attributes 
    attrs.putAll(newAttrs) 
    attrs["sun-idrepo-ldapv3-config-authpw"]=setOf("*********") 
    subConf.attributes = attrs 
} 
+0

顯然,將這​​些信息保存到目錄服務時,會添加一些鹽!我不確定這些鹽是由OpenAM還是OpenDJ本身添加的!請幫幫我! – Kamyar

回答

1

的ClientSDK和OpenAM服務器必須使用相同的加密密鑰(am.encryption.pwd財產AMConfig.properties在ClientSDK側)。

請注意,ClientSDK已被棄用,並強烈建議不要在新部署中使用它。

+0

我別無選擇! OpenAM 13是越野車(必須使用OpenDJ 3,它是越野車!)我使用的是OpenAM 12,對於這種操作,沒有RESTful API! – Kamyar

+0

我只是在此處添加警告以警告其他人,他們可以選擇... –

+0

您的解決方案解決了我的問題!真的感謝!我浪費了大約2個工作日的時間,並最終通過從Directory Service預留密碼並使用OpenDJ SDK重新恢復它來暫時解決問題!但是現在我解決了這個問題並刪除了髒的DS代碼! – Kamyar