API Connect

API Connect

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.


#API Connect
#Applicationintegration
#APIConnect
 View Only
Expand all | Collapse all

Multiple Catalog with single registry

  • 1.  Multiple Catalog with single registry

    Posted 03/20/24 05:20 PM

    Hi,

    I have a use case where I have more than 1 catalog and all those catalog points to same registry.

    Scenario:

    Catalog1- user1 does signs up and creates consumer Org. So user is now part of Consumer org-1

    User1 is going to Catalog2 where there is no consumer Org and he can't sign up because if he does sign up will say user already exists. and he cant login also because there is consumer Org assigned to him. 

    So basically what I am looking is that can Signup behave differently if user exists then sign up process create the Consumer org but don't connect to the registry.

    or any suggestions how generally the process should be. Any recommendations.



    ------------------------------
    Syed Imtiyaz Alam
    ------------------------------


  • 2.  RE: Multiple Catalog with single registry

    Posted 03/21/24 02:05 AM

    It is not recommended to share user registries with multiple portal sites and this is precisely why.

    Create a separate user registry for each portal site, even if each user registry points at the same backend authentication provider (eg same oidc server).

    If the user already exists in the user registry then obviously register is not going to work twice. They should be able to create a new consumer org though in the second site. If I remember right if they try to login the portal will lock down most features but the create a consumer org option in the user menu top right should still be available.

    or you can add them to a consumerorg from api manager.

    But basically this setup is a pretty bad idea and is explicitly documented as something to avoid in the documentation.



    ------------------------------
    Chris Dudley
    ------------------------------



  • 3.  RE: Multiple Catalog with single registry

    Posted 03/27/24 08:03 AM

    thank you Chris. Yes we will follow this but we wont enable creation of Consumer org by them self. During Signup only they can create or Admin creating via apim.

    but I am not able to understand what is difference between sharing vs having separate registry when both points to same backend server. Could you please elaborate more on this. maybe I am not following how internally developer works with unique email address.



    ------------------------------
    Syed Imtiyaz Alam
    ------------------------------



  • 4.  RE: Multiple Catalog with single registry

    Posted 03/27/24 09:44 AM

    The issue isnt where the backend server is, its what the UR is used for.

    When you create an account for a given scope it creates a record in that user registry (UR). It wont contain a password or anything like that, since the authentication is being done externally, but we still need to have a user record to associate membership to. If you share that user registry across other scopes then various processes might not work how you might expect them. For example you can't create a new account since one already exists, but it might not have access since it was never explicitly added to this scope. There are a whole variety of flows where "quirks" can be seen.

    There is no downside to having multiple user registries in api manager - it just means a table of user records specific to this scope which then allows you to more precisely manage access to that scope. Thats why it is documented best practice not to share user registries across scopes.

    Hope that helps



    ------------------------------
    Chris Dudley
    ------------------------------



  • 5.  RE: Multiple Catalog with single registry

    Posted 04/03/24 07:47 AM

    but in the case of signup connects to some external registry LDAP , user will do sign up only on one catalog and even if user tries the signup will fail as user already exists on that external LDAP.

    Lets say if different registry per catalog which connects to same backend LDAP server . during this time also user can do signup in one catalog only? because if user tries to do signup then it will fail saying user already exists on that external LDAP?

    So are you saying even signup connected to external registry, there is user table that gets created internally ? if yes is it during sign up ?

    when shared , once user is part of consumer org , he can login to another catalog.



    ------------------------------
    Syed Imtiyaz Alam
    ------------------------------



  • 6.  RE: Multiple Catalog with single registry

    Posted 04/03/24 08:04 AM

    I think you might be confusing the user registry in API Manager and the external authentication provider.

    It is very rare to be using a writable LDAP server, so when someone clicks register account, it is creating an account in the apim user registry having authenticated against an existing set of credentials in the external LDAP server. It is not normally creating an account in the LDAP server since the use of writable LDAP is pretty rare.

    Are you actually using writable LDAP ?



    ------------------------------
    Chris Dudley
    ------------------------------



  • 7.  RE: Multiple Catalog with single registry

    Posted 04/04/24 07:26 AM
    Edited by Syed Imtiyaz Alam 04/04/24 07:26 AM

    Maybe I am confused or missing something here.

    So there is 2 part , one sign-up and another is Sign-in.

    My understanding is that for both part (Signup/signin) it should point to same server.

    Note: we are not using local registry because we already have our AD server where internal/external users are there.

    Current: Self signup is disabled and only option is Sign in. So for now we add the user to this AD and just ask them to login with the credentials obviously after adding the user to existing consumer org.

    New:  We want to enable self signup and during this time user should be added to the same AD server and this is what you are mentioning as Writable ?And Once user do self signup and email verification, user is able to login. And along with this all the default process should happen like creation of consumer org etc.

    When you say >> when someone clicks register account, it is creating an account in the apim user registry >> this is when you are using local registry right ? 

    see below: below image is shown when not using local registry. currently i don't see other fields like consumer org/email address etc ? which I would assume we need to add as custom field or am I missing something here.

    this is when you are not using local registry
    This is when using local registry
    when using local registry



    ------------------------------
    Syed Imtiyaz Alam
    ------------------------------



  • 8.  RE: Multiple Catalog with single registry

    Posted 04/05/24 05:36 AM

    The use of writable LDAP is pretty rare. We would definitely not recommend sharing the same user registry across catalogs - regardless of what user registry is being used.

    I recommend you create multiple APIM user registries pointing to the same LDAP server. On the first catalog the user would click register and it would then ask for their LDAP credentials if they have an existing LDAP account or if you have enabled writable LDAP then it will let them create a new LDAP account. The same would then apply on subsequent catalogs.
    There are 2 steps here and when we talk about "register new account" that is about creating a new account in the apim user registry - even if they already have an account in the backend LDAP server. They need to be added to this catalog and that means they need to register. If you disable self-service onboarding then only those users in the APIM user registry will be able to login - regardless of whether they exist in the LDAP server or not.
    The LDAP server is purely providing authentication - authorisation is entirely done by the APIM user registry.

    Hope that helps



    ------------------------------
    Chris Dudley
    ------------------------------



  • 9.  RE: Multiple Catalog with single registry

    Posted 04/05/24 02:00 PM
    Edited by Syed Imtiyaz Alam 04/05/24 10:15 PM

    Thank you Chris and yes this is helping me.

    So recommendation is that we should have separate registries even same server.

    another question >> when user move to another catalog having self signup is enabled and separate registry pointing to same LDAP server. When they again click sign up and put all the details , will they be able to register ? if yes how ? wouldn't writable registry throws' error saying you already exists  or are you saying that writable registry will take care and just register the user to the catalog but will not throw error even LDAP has the user.

    I am just trying to understand the complete workflow.

    And when we add the user to the consumer org manually , then we are adding the user to the APIM user registry ?

    Now we did some POC for this :

    setting up OIDC for MFA  and at the same time we are trying to enable the self service onboarding.

     So when we click register, it asks for consumer Org and it is not letting me create new user name/password and but it asks me email address /firstname/last name but everytime it is linking to same account  so not sure why it is not letting me create new user.



    ------------------------------
    Syed Imtiyaz Alam
    ------------------------------



  • 10.  RE: Multiple Catalog with single registry

    Posted 04/08/24 03:10 PM

    Hi Chris,

    Looking for some guidance here to understand this.

    is this not possible ? signup using writable LDAP and Sign in using OIDC.



    ------------------------------
    Syed Imtiyaz Alam
    ------------------------------



  • 11.  RE: Multiple Catalog with single registry

    Posted 04/10/24 04:28 AM

    I think you are misunderstanding how OIDC works.

    When you have an OIDC user registry a link appears on the page - that link takes you to your OIDC authentication provider. It can have all sorts of capabilities we dont need to be aware of - e.g. it could include MFA. It could also allow you to create an account if one doesnt already exist. The point is that once authenticated it returns back to APIC and we're happy. There is no dedicated "register" form for an OIDC user registry in the portal because its none of our concern - you would do that in the OIDC authentication provider when you are redirected there.

    Look at how sites that use google login work - you click the authenticate with google button, you get redirected to google, and if you have an account you can login, if you don't you can create a new one and then login and it will redirect you back to the original site. That's the beauty of OIDC - the original website doesn't need to be involved in any of this.



    ------------------------------
    Chris Dudley
    ------------------------------



  • 12.  RE: Multiple Catalog with single registry

    Posted 04/11/24 05:48 PM

    Thank you So much Chris. after POC also everything now makes sense and am able to understand whole flow.

    currently I am not able to test the register new account functionality as from my browser , OIDC always returns my user info as I am already there and is only able to create new consumer Org But based on this discussion, I can assume that if I am not part of registry then it would give me option of creating username/password right along with consumer org etc.



    ------------------------------
    Syed Imtiyaz Alam
    ------------------------------



  • 13.  RE: Multiple Catalog with single registry

    Posted 04/12/24 01:49 AM

    APIC cannot create accounts in your oidc authentication provider. If you want to allow users to create accounts your oidc provider has to handle it. There will never be forms in the portal asking you for the details to create a new oidc user - you do all of that after you get redirected to the oidc authentication server.

    From apic's pov oidc is not writable. So no you definitely will not get fields in the portal to create a new oidc user, however when redirected to the oidc server it can allow new account creation. Remember the whole point of oidc is that the consuming application (apic) never gets your password. 



    ------------------------------
    Chris Dudley
    ------------------------------