-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to Access Indigo IAM OIDC Configuration from iRODS #691
Comments
Hi, we are not familiar with iRODS so I'm not sure how much we can help. So, where are you stuck at? Which errors you see on the iRODS logs? And on the IAM logs? About the redirect URI, I guess the question is for iRODS devs. In IAM, just be sure that the authorization_code grant is enabled for your client. |
Hi @federicaagostini thank for your reply. Actually the iRODS team has made significant update to the config file yesterday, right after we wrote to you : irods/irods_client_http_api@84b465e
may you please show us the way to do that? |
Not sure I've understood correctly, but an access token can contain claims which identify the user, such as
or groups the user belong to, e.g.
or the organization name in IAM
Does one of those work for you? |
I'm not sure because the iRODS team hasn't answer back yet but I was thinking that we should just need to add the irods_username claim to the Indigo IAM user profile in order for the mapping to happen. But I tell you I'm a bit confused about this. We were thinking about a user flow allowing the user to log into Indigo IAM and then be able to access to iRODS without authenticating again, would that be possible in your opinion ? Also, different question, do you think that we can handle different VO (Research Infrastructures) as groups in a single Indigo IAM instance ? |
About adding the About handling different VOs in a single IAM instance, this was the case with the ESCAPE project. In the ESCAPE IAM it is defined a common parent group, and many subgroups, one per VO. The common parent group is not necessary if you do not use VOMS proxies, so defining one single group per VO should be enough. Then any group can be handled both by IAM admin and group managers. Ideally, each group has at least one group manager, that is the representative of the VO. I guess this is a good solution. |
Regarding the
Given that it's not possible to have a custom claim in Indigo IAM, should we conclude that establishing an OIDC connection with iRODS is not possible, or have I misunderstood? As for handling different Virtual Organizations (VOs) as groups, thank you for confirming that. I'm wondering if it's possible to customize the registration form (https://fits-indigo-iam-test.in2p3.fr/start-registration) by adding a VO field. This would allow a member of a VO to specify for which VO they are seeking affiliation. This customization seems necessary if we want the group (VO) manager to be notified when a user requests affiliation, specifically to their group (VO) and not to any other group's manager. Wouldn't this be possible? |
With the current version of IAM it is not possible at all, it's correct, and some development would be needed to support iRODS connection.
I think this is a different thread to be addressed in another issue/discussion, but I would also wait for @giacomini's opinion about that. |
Finally it looks like 0.2.0 will allow to map irods_username with IAM nickname, it's just about waiting: irods/irods_client_http_api#227 As for the VO ok thanks I'll wait for your feedback. |
Hello @federicaagostini
but this is the access token that I get:
what I do wrong? Also I'm not sure how |
Detail: I tested the access token request using the secret and client_id of the FITS client, the one initiating the request, and the access token does indeed contain the preferred_username claim. However, when I request the access token to be sent as a bearer to the iRODS HTTP API, even if executing the request from the FITS client I need to use the client_id and secret of the iRODS api client - the one that ask for the authorization grant passed to the request as $authorizationCode. This time, it doesn't work. So, there seems to be a connection between these issues. NB: the two clients, Fits and Irods Api, are registered in the instance Indigo with exactly the same configuration and scopes |
Just thinking aloud: if there are multiple top-level group, we could assume we are in a "multi-VO" deployment and present a drop-down menu to select which top-level group is preferred. But we need to discuss this internally and assess what the impact is on the rest of the code. |
@federicaagostini, I have opened a new issue that is more clear regarding the 'preferred_username' problem. This will help keep the different questions I added to this issue separated :) |
Closing this issue since
|
Hello,
me and @sigau are currently facing challenges in creating an OIDC connection between the Indigo IAM instance and iRODS. Could you please provide clarification on how this can be achieved?
Our goal is to allow users to authenticate on Indigo and subsequently access their iRODS without the need for reauthentication, whether through the CLI or a portal that has already been registered as a client in Indigo IAM.
To facilitate this, we have created a new client named "iRODS" and configured the iRODS API config file as follows:
Here are some additional details:
fits-indigo-iam-test.in2p3.fr is the machine where our test Indigo IAM instance is running and is accessible.
The test iRODS is running on a machine that can successfully ping fits-indigo-iam-test.in2p3.fr. Could you provide insights into what this issue might be related to?
Furthermore, we are uncertain about the correct redirect URI to set. Can you provide guidance on the recommended path forward?
For reference, here is the link to the iRODS API: https://github.com/irods/irods_client_http_api/tree/main
Thank you in advance for your help
The text was updated successfully, but these errors were encountered: