- 
                Notifications
    
You must be signed in to change notification settings  - Fork 13
 
feat: added discovery patterns section #265
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
base: main
Are you sure you want to change the base?
Conversation
| 
           This is a good idea, thanks for writing this. Something that surprised me about the current spec is that there's not much information (if anything) on how to actually use it, particularly discovery and how to integrate it with OpenID Connect flows  | 
    
        
          
                openid-federation-1_0.xml
              
                Outdated
          
        
      | <section title="Single Point of Trust" anchor="single_point_discovery"> | ||
| <t> | ||
| Single point of trust discovery delegates the entire trust evaluation process | ||
| to a trusted resolver implementing the <xref target="resolve"/>. This pattern is useful for: | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| to a trusted resolver implementing the <xref target="resolve"/>. This pattern is useful for: | |
| to a trusted resolver implementing <xref target="resolve"/>. This pattern is useful for: | 
| 
           I think this is useful, though I have a pair of questions: 
  | 
    
        
          
                openid-federation-1_0.xml
              
                Outdated
          
        
      | Single point of trust discovery delegates the entire trust evaluation process | ||
| to a trusted resolver implementing the <xref target="resolve"/>. This pattern is useful for: | ||
| <list style="symbols"> | ||
| <t>Entities that want to offload trust chain resolution complexity</t> | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| <t>Entities that want to offload trust chain resolution complexity</t> | |
| <t>Entities that want to offload Trust Chain resolution complexity</t> | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please apply all of my suggestions - most of which simply apply appropriate capitalization to defined terms.
Co-authored-by: Michael B. Jones <michael_b_jones@hotmail.com>
Co-authored-by: Michael B. Jones <michael_b_jones@hotmail.com>
| 
           I generally agree with Davide, but have some additional / extended comments: I'm reserved about the current content of this PR. You introduce the concept of "discovery". But it's not clear what this actually means. OIDC has a spec on "discovery". In the federation world we understand something else under discovery. I would generally understand it as "finding entities that are part of a federation". I'm also not sure if this should be a dedicated section, or rather under implementation considerations.  | 
    
| 
           I think @zachmann is right saying that it would be helpful to explain exactly what type of discovery we are referring to. In this context there are at least two types of discovery: 
 I think the current text could benefit from a description of what we mean exactly by discovery for each pattern, while here we have only the why, the how, and the final/expected outcome. I also agree that being this text probably go into implementation considerations.  | 
    
| 
           I read the document before seeing the comments above, and I was also a bit surprised to see the bottom-up section labeled as "discovery." It gave me the impression that it overlaps significantly with trust resolution. I agree with the earlier comments in this regard. I definitely see the value of adding the top-down discovery as this is something that hasn't been covered. When it comes to the rest, I find this to be a very useful guide for implementers, especially those just getting started with the spec. It clearly explains that implementers can take either a bottom-up or single-point approach. The latter for example isn't particularly prominent at the moment - a developer would need to read into the second paragraph of Section 10 to realize they can delegate resolution.  | 
    
          
 yes, a discovery would not be trustworthy without a trust chain resolution, be this direct or delegated (by resolve endpoint, recommending transparent evidences of the trust chain within the response) 
 listing alone doesn't give policy or entity type constraints, therefore it is. Trust Chain confirms all the claims superiors say about subordinates and leaves about themselves. 
 discovery has therefore multiple layers. at the end, once all the entities matching some protocol specific application requires to be evaluated by processing their trust chain befose be considered, for instance about an RP, in a discovery page. 
 Trust resolution using a discovery mechanisms starting from the leaf's entity configuration and following the authority hints ... making the trust chain collection.  | 
    
| 
           we can move it in a subsection of the impl consideration as well we have the term federaiton discovery in the defined term section as well and the current PR should change the content of the defined term: https://openid.net/specs/openid-federation-1_0.html#section-1.2-3.34 or be moved within the impl considerations the final choices would be accomodated according to the comments collected durint the connect ab calls and within this thread as well. Thank you ppl!  | 
    
| <t> | ||
| Added Discovery Patterns section. | ||
| </t> | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please merge with main and then move the history entry into the -45 section.
          
 You are - of course - right with that. I missed that. (Assumed I would know the defined terms by now). Also I Think it would make sense to include a note that entities can evaluate additional requirements as part of the discovery, such as requiring certain trust marks to be present and valid.  | 
    
| 
           I agree that this should be an Implementation Considerations subsection  | 
    
This PR introduces a dedicated section about the discovery patterns implementers should implement according to specific use cases.
This PR aims to describe the different ways to implement trust discovery according to different approaches. These approaches were collected during the past few years and based on real-world implementations and implementers' experiences.