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

[Feature Request] Implement POP (SHR) for confidential client bringing your own keys (#2) #2013

Closed
trwalke opened this issue Aug 26, 2020 · 4 comments

Comments

@trwalke
Copy link
Member

trwalke commented Aug 26, 2020

What MSAL implements today:

  • WithProofOfPossession API
  • this is available on .NET desktop for public client only
  • there exists an internal interface IPoPCryptoProvider for key management
  • key management is done by storing key on disk in a container (similar to DPAPI protection)

Tasks to complete:

First deliverable

  1. Refactor WithProofOfPossession public API to be more like MSAL Android's implementation (api and example) and take into consideration the fact that Method and Url are optional.

Second deliverable

  1. [Needs discussion] Refactor IPoPCryptoProvider interface to provide a higher level abstraction. The current CannonicalPublicKeyJwk is pretty low level. Or maybe it's ok as Wilson can plugin here.
  2. Make IPoPCryptoProvider class public and expose a new overload of WithProofOfPossession that takes in a IPoPCryptoProvider so that customers can define their own key management.
@trwalke
Copy link
Member Author

trwalke commented Aug 26, 2020

Continuation of #1946

@henrik-me henrik-me added this to Todo/Committed in MSAL.NET (legacy) via automation Aug 27, 2020
@henrik-me henrik-me moved this from Todo/Committed to In progress in MSAL.NET (legacy) Aug 27, 2020
@henrik-me henrik-me added this to the 4.19.0 milestone Aug 27, 2020
@trwalke trwalke moved this from In progress to Fixed in MSAL.NET (legacy) Sep 3, 2020
@trwalke trwalke moved this from Fixed to In progress in MSAL.NET (legacy) Sep 24, 2020
@trwalke trwalke moved this from In progress to Todo/Committed in MSAL.NET (legacy) Sep 24, 2020
@trwalke trwalke moved this from Todo/Committed to In progress in MSAL.NET (legacy) Oct 1, 2020
@trwalke trwalke moved this from In progress to Todo/Committed in MSAL.NET (legacy) Oct 1, 2020
@trwalke trwalke moved this from Todo/Committed to In progress in MSAL.NET (legacy) Oct 1, 2020
@trwalke trwalke moved this from In Progress to Blocked/Waiting for reply in MSAL.NET (legacy) Oct 6, 2020
@trwalke trwalke moved this from Blocked/Waiting for reply to Todo/Committed in MSAL.NET (legacy) Oct 8, 2020
@trwalke trwalke moved this from Todo/Committed to In Progress in MSAL.NET (legacy) Oct 12, 2020
@jmprieur jmprieur modified the milestones: 4.20.0, 4.22 Oct 15, 2020
@jmprieur
Copy link
Contributor

@trwalke do we need to do more ?

@bgavrilMS
Copy link
Member

@jmprieur - the second deliverable is around exposing an interface that enables users to bring their own POP keys.
I'd say that a 3rd deliverable is to align our public API to the Android API, which has been approved in Api Reviews.

@trwalke trwalke mentioned this issue Oct 15, 2020
@jennyf19 jennyf19 added this to In progress in 4.22.0 Oct 16, 2020
@bgavrilMS bgavrilMS modified the milestones: 4.22, 4.23 Oct 27, 2020
@bgavrilMS bgavrilMS removed this from In progress in 4.22.0 Oct 27, 2020
@bgavrilMS bgavrilMS added this to To do in 4.23.0 via automation Oct 27, 2020
@bgavrilMS bgavrilMS moved this from In Progress to Blocked/Waiting for reply in MSAL.NET (legacy) Oct 27, 2020
@bgavrilMS
Copy link
Member

Blocked on spec.

@bgavrilMS bgavrilMS moved this from Blocked/Waiting for reply to Fixed in MSAL.NET (legacy) Nov 5, 2020
@jmprieur jmprieur changed the title [Feature Request] Implement POP (SHR) for confidential client (#2) [Feature Request] Implement POP (SHR) for confidential client bringing your own keys (#2) Nov 5, 2020
@trwalke trwalke added the Fixed label Nov 13, 2020
@trwalke trwalke moved this from To do to Done in 4.23.0 Nov 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

No branches or pull requests

4 participants