2017-10-05 291 views
0

我有一個開放標識提供程序,我使用此提供程序作爲keycloak的標識代理。我想映射從代理髮送到keycloak的角色(聲明)(keycloak將在其jwt中發送映射的角色)。我想知道如何實現和添加自定義映射到keycloak(如keycode中的hardcodedmapper,attributemapper)。我可以這樣做嗎?謝謝Keycloak創建自定義標識提供商映射程序

+0

可能重複[Keycloak自定義OpenID Connect身份提供程序映射器](https://stackoverflow.com/questions/46584325/keycloak-custom-openid-connect-identity-provider-mapper) –

+0

請不要發佈問題兩次。你可以編輯你的問題或其他什麼,如果你發現需要很長的時間才能得到答案,請向keycloak用戶maillist詢問。 –

+0

有任何解決方案或建議嗎? – Batuhan

回答

1

創建您的新provider類,我擴展了現有的org.keycloak.broker.saml.mappers.AttributeToRoleMapper類。

建立你的jar時,確保你有一個名爲services的文件夾,META-INF文件夾。

在此文件夾中創建一個名爲org.keycloak.broker.provider.IdentityProviderMapper的簡單文本文件,在該文件中添加新提供者類的全名,即package.Classname

編譯後,將文件放在Keycloak根文件夾下的提供程序文件夾中。重新啓動你的容器。

+0

你好,謝謝你的回答。是否有示例代碼塊或示例提供程序類(和或項目)。首先,我將創建一個Java庫,我將擴展「org.keycloak.broker.saml.mappers.AttributeToRoleMapper」類,然後我將構建它並將其放到keycloak_root/provider。我對嗎?我不太清楚,請解釋一下這句話「在構建你的jar文件時,確保你有一個名爲services的文件夾,META-INF文件夾。」 – Batuhan