Content Management and Capture

 View Only
Expand all | Collapse all

FileNet CPE SCIM connection to Azure

  • 1.  FileNet CPE SCIM connection to Azure

    Posted Sun March 05, 2023 03:22 PM

    We are working on connecting OAuth and CPE/ICN to Azure.  To help the customer manger users/groups being added to CPE Managed Directory Service we need to get SCIM working.  I have tried to back engineer using the documentation and help bubbles to get CPE SCIM connecting to Azure.

    Example of help bubble when setting up SCIM.  For value SCIM context path the help shows "For example, the context path for IAM is dmgmt/identity/api/v1/scim)."   There are more values needing to be filled out, but this is a simple example not being able to find the counterpart in Azure. 

    Thank You for your time,

    JJ



    ------------------------------
    John Justice
    ------------------------------


  • 2.  RE: FileNet CPE SCIM connection to Azure

    Posted Tue March 07, 2023 04:02 PM

    You can use Azure AD as an OIDC identity provider.  However, SCIM integration is not supported at this time.  This is because Azure does not allow retrieving the groups a user is a member of from a SCIM user query.  Azure only allows retrieving members from a SCIM group query.



    ------------------------------
    ROGER Bacalzo
    ------------------------------



  • 3.  RE: FileNet CPE SCIM connection to Azure

    Posted Wed February 21, 2024 04:38 PM

    is that still the case today (Feb 2024)



    ------------------------------
    Tilo S
    ------------------------------



  • 4.  RE: FileNet CPE SCIM connection to Azure

    Posted Thu February 22, 2024 04:56 PM
      |   view attached

    Hi,

    While you still cannot use Azure SCIM directly with CPE, as of FNCM 5.5.12, you can do so by using RedHat Keycloak.  In this configuration, Keycloak is set up as the IDP and SCIM server between CPE and Azure AD.  Keycloak has an interface with Azure so that Azure users and Groups can be imported into Keycloak.  Then you can use Keycloak in a CPE SCIM Directory Configuration for authorization.

    This configuration is described in the Integration with Red Hat Keycloak section of the attached presentation: P85512 - FNCMS Container Deployment.pdf.



    ------------------------------
    ROGER Bacalzo
    ------------------------------

    Attachment(s)



  • 5.  RE: FileNet CPE SCIM connection to Azure

    Posted Thu February 22, 2024 06:06 PM

    Awesome, thank you for the update and useful PDF. 

    So to make SCIM Azure AD work we need to implement Keycloak and the "scim-for-keycloak" plugin.

    Trusting the keycloak tool is a smaller issue (as it comes from RH) but trusting the random plugin developer (Mr Knüppel) could be a issue in technical review boards meetings.   :-)

    Could you please clarify if both (keycloak and plugin) are needed because of Azure AD (well now Entra ID) limitations or FN CPE limitations?
    Any plans to improve support of Azure AD via SCIM directly? 



    ------------------------------
    Tilo S
    ------------------------------



  • 6.  RE: FileNet CPE SCIM connection to Azure

    Posted Thu February 22, 2024 06:43 PM

    Yes, both Keycloak and the "scim-for-keycloak" plugin are required.

    CPE cannot work with Azure AD SCIM directly due to an Azure AD limitation that does not return the groups to which a user belongs using a SCIM query on the user.  This Azure AD limitation is also mentioned in this stackoverflow post:  https://stackoverflow.com/questions/70377887/azure-ad-scim-attribute-mapping-group-membership-expression, in which it's stated

    Group membership is considered a property of the group object, and cannot be called into any logic expressions for user objects.

    Until Microsoft fixes this issue, CPE SCIM integration directly with Azure AD is not possible.



    ------------------------------
    ROGER Bacalzo
    ------------------------------



  • 7.  RE: FileNet CPE SCIM connection to Azure

    Posted Mon March 11, 2024 04:38 PM

    I see a few option here to simplify the solution stack. 

    • Azure AD (Entra ID) returns group (MS fix)
    • FN CPE implement a workaround (IBM fix)
    • SCIM server support directly in keycloak (IBM [RH] fix)
      • https://github.com/keycloak/keycloak/issues/13484
      • https://issues.redhat.com/browse/KEYCLOAK-2537 (created: 2016)

    Maybe the FN ECM team can push the SCIM feature in keycloak a bit. ⇑



    ------------------------------
    Tilo S
    ------------------------------



  • 8.  RE: FileNet CPE SCIM connection to Azure

    Posted Tue October 22, 2024 03:36 PM

    Hello,

    I am trying to do exactly that, but with a classic deployment of CPE. I have looked online for resources about this, but all of them seem to refer to the container version of FN. Do you know if it's possible to have a Azure AD - Keycloak with SCIM plugin - classic FN deployment in a VM?



    ------------------------------
    Alexandru-Emilian Adamovici
    ------------------------------



  • 9.  RE: FileNet CPE SCIM connection to Azure

    Posted Tue October 22, 2024 04:02 PM

    As of CPE 5.6, SCIM is supported as a Directory Provider on traditional WebSphere deployments and has been qualified to work with keycloak connected to Azure AD.  See this What's New topic: https://www.ibm.com/docs/en/filenet-p8-platform/5.6.0?topic=welcome-whats-new



    ------------------------------
    ROGER Bacalzo
    ------------------------------



  • 10.  RE: FileNet CPE SCIM connection to Azure

    Posted Tue October 22, 2024 04:07 PM

    Thank you for this Roger. Are you aware if there is any documentation available on how the configuration on the WebSphere and CE side is performed? I have Keycloak deployed and the plugin enabled.



    ------------------------------
    Alexandru-Emilian Adamovici
    ------------------------------



  • 11.  RE: FileNet CPE SCIM connection to Azure

    Posted Tue October 22, 2024 09:30 PM

    See this blog for configuring OIDC with FileNet on traditional WebSphere

    How to Configure LTPA/OAuth/OIDC SSO with FileNet ICN, CS GraphQL, and CPE on WebSphere ND Application Server 
    https://community.ibm.com/community/user/automation/blogs/roger-bacalzo1/2021/05/28/how-to-configure-sso-with-fncm-on-websphere-nd

    As far as specific keycloak configuration with CE, here are some relying party examples

    WebSphere OIDC Relying Party Configuration for ACCE

    Name

    Value

    provider_1.identifier

    keycloakACCE

    provider_1.interceptedPathFilter

    /acce.*

    provider_1.discoveryEndpointUrl

    https://fncm-keycloak.ibm.com/realms/ISVDRealm/.well-known/openid-configuration

    provider_1.signatureAlgorithm

    RS256

    provider_1.audiences

    ALL_AUDIENCES

    provider_1.issuerIdentifier

    https://fncm-keycloak.ibm.com/realms/ISVDRealm

    provider_1.clientId

    scim-client

    provider_1.clientSecret

    XXXXX

    provider_1.useRealm

    keycloak

    provider_1.userIdentifier

    preferred_username

    provider_1.uniqueUserIdentifier

    sub

     provider_1.useJwtFromRequest

    ifPresent

     provider_1.scope

     openid email profile

    provider_1.responseType

    code

    provider_1.verifyIssuerInIat

    TRUE

    WebSphere OIDC Relying Party Configuration for CPE

    providNameer_2.identifier

    keycloakValueCPE

    provider_2.filter

    Authorization%=Bearer

    provider_2.discoveryEndpointUrl

    https://fncm-keycloak.ibm.com/realms/ISVDRealm/.well-known/openid-configuration

    provider_2.signatureAlgorithm

    RS256

    provider_2.audiences

    ALL_AUDIENCES

    provider_2.issuerIdentifier

    https://fncm-keycloak.ibm.com/realms/ISVDRealm

    provider_2.clientId

    scim-client

     provider_2.clientSecret

    XXXXX

    provider_2.useRealm

    keycloak

    provider_2.userIdentifier

    preferred_username

    provider_2.uniqueUserIdentifier

    sub

    provider_2.useJwtFromRequest

    ifPresent

    provider_2.scope

     openid email profile

    provider_2.responseType

    code

    provider_2.verifyIssuerInIat

    TRUE



    ------------------------------
    ROGER Bacalzo
    ------------------------------