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

[ENHANCE] Allow generateServiceProviderMetadata to discover the encryption capabilities of the underlying system #14

Open
alexstuart opened this issue Jul 26, 2021 · 2 comments
Labels
enhancement New feature or request pr-welcome

Comments

@alexstuart
Copy link

generateServiceProviderMetadata includes a static list of algorithms that are encoded into EncryptionMethod elements.

Note that #13 discovers that the static list is incorrect and proposes replacing the algorithms with correct URIs.

A more robust solution would be for generateServiceProviderMetadata to query the system and discover the supported algorithms, which are subsequently published in metadata. Such a solution is significantly more work than fixing two typos so I've submitted this issue as an enhancement.

@alexstuart alexstuart added the enhancement New feature or request label Jul 26, 2021
@tomgiddingsjisc
Copy link
Contributor

tomgiddingsjisc commented Jul 27, 2021

Just to add to Alex's suggestion (thanks Alex!) - I'm more than happy to have a look at this and create a PR if it's welcome.

This could be along the lines of:

  1. Adding getEncryptionAlgorithms as part of algorithms.ts.
  2. Creating a new encryptionAlgorithm core option and type to allow an array of the above options.
  3. Use the generated array to replace the existing fixed array, with the original options being supplied as a default if encryptionAlgorithm isn't set.
  4. Followup PR for passport-saml on release.

Though obviously please do let me know if you would prefer a different approach, or have any suggestions.

@cjbarth
Copy link
Collaborator

cjbarth commented Oct 1, 2021

I'd be interested in seeing a PR to accomplish this. I'm not sure of the entire advantage since we know what the underlying library supports and can statically respond with that. However, such an enhancement would allow us to not worry about dependency changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pr-welcome
Projects
None yet
Development

No branches or pull requests

3 participants