Skip to content
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

DRS + Passports client role and capabilities #353

Open
jb-adams opened this issue Apr 28, 2021 · 2 comments
Open

DRS + Passports client role and capabilities #353

jb-adams opened this issue Apr 28, 2021 · 2 comments

Comments

@jb-adams
Copy link
Member

jb-adams commented Apr 28, 2021

A sub-problem of the DRS + Passports Design Resolution epic.

This sub-problem involves reaching consensus on what a DRS/Passport-aware client should be able to do to facilitate this flow. It also involves what information needs to be communicated to the client from the service.

Questions include:

  • Where do we need to support handling passports that are too large for headers?
    • For some requests, an Authorization header may suffice, BUT we know some passport access tokens may be too large for headers
    • Should large passport tokens be passed in the request body and sent via POST request?
  • How can we make the supported flows/capabilities self-describing in DRS?
    • If the DRS service supports OAuth2 bearer tokens, embedded passport access tokens, root passport access tokens, or some combination thereof, where is this communicated to client? Can/should this go in service-info?
  • Can we support OAuth and passports?
    • Should we leverage an existing OAuth flow to do the token downscoping?
    • Can we self-describe so a client can discover which kind of flow a DRS server supports?
@briandoconnor
Copy link
Contributor

The Broad team reached out to me to ask about adding key/values to a DRS response to make it clear what auth mechanism to use for that resources.

@mattions
Copy link

@briandoconnor this exactly the same problem I wanted to discuss in the Cloud Workstream meeting.

I think we need to add an authorization key to DRS, which points maybe to the iss, and provides type: ga4gh_passport maybe, so we can differentiate in case we have several DRS object, from the same server, with multiple authorization mechanism

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants