[Openid-specs-heart] "Scope" of sharing and purpose of use
Eve Maler
eve.maler at forgerock.com
Fri Dec 11 17:42:47 UTC 2015
Hi John-- (I changed the subject line and deleted older parts of the
thread.)
When you say "scope" here, I suspect you mean "scope" of the sharing use
case, rather than something like an OAuth or UMA scope, so I'm just
checking. So a "single-patient scope" means that the only human we're
paying attention to in the use case is the patient, and "any application
with users that are authorized to multiple patients" seems to mean a use
case that involves party-to-party sharing, with multiple humans involved.
However, you follow the latter with "would need to get multiple scopes", so
I'm not sure. Note that "getting multiple scopes" as a technical construct
doesn't have anything to do with sharing with an autonomous third party.
FWIW, here is how I think, at a high level, about *configuring the
delegation of rights to access resources*. It's all about *parts of speech*.
OAuth lets a user (patient) do this configuration at run time while using a
client app, by opting in to the authorization server's issuance of an
access token to that app. By contrast, UMA lets a user (patient) do this
configuration anytime, generally by instructing the authorization server to
check whether some combination of the client app and the requesting party
using the app meet various requirements (policy). So OAuth is kind of an
attenuated version of UMA wrt the constraints on delegation of access
rights.
system subject verb object
adjective
OAuth client ID OAuth scopes
(implicitly some endpoints) n/a
(and always Alice)
UMA claims-based eg Bob, UMA scopes over... UMA
resource sets claims-based e.g. TPO,
client ID/type, etc.
time limitations, etc.
It's possible to conflate purpose-of-use into the UMA scopes system, but
it's as awkward as conflating (ordinarily implicit) resource sets into the
OAuth scopes system (resource1.read, resource1.write, etc.), which is why
OAuth has invented the audience parameter to try and solve the problem of a
single authorization server protecting several APIs. This is why I suggest
using a claims-based system above.
*Eve Maler*ForgeRock Office of the CTO | VP Innovation & Emerging Technology
Cell +1 425.345.6756 | Skype: xmlgrrl | Twitter: @xmlgrrl
Join our ForgeRock.org OpenUMA <http://forgerock.org/openuma/> community!
On Mon, Dec 7, 2015 at 2:00 PM, Moehrke, John (GE Healthcare) <
John.Moehrke at med.ge.com> wrote:
> The discussion on the call today was too hard to break into. Even for a
> big mouth like me.
>
>
>
> I am okay with limiting our next couple of profiles to single patient
> scopes. As much of the email discussion has pointed out patient controlled
> access is our primary scope, and logically (if not technically) this is
> easy to understand with scopes that are single patient.
>
>
>
> Yes this means that any application with users that are authorized to
> multiple patients would need to get multiple scopes; so be it. For now…
> For Enterprise use, this is troubling; but for most uses that happen from
> outside of an enterprise or between enterprises this limitation is not
> unreasonable. The most common APIs in healthcare for this are already
> patient centric. So it is not a big problem.
>
>
>
> The user experience does not need to be impacted by this profiled
> limitation
>
>
>
> The future does not need to be impacted by this profiled limitation.
>
>
>
> Which means that one viewpoint for scope can be the identity of the
> patient that one is asking for access to. This is not the only scope we
> will ever support; but is one method that would satisfy some use-cases
> today.
>
>
>
> Another view on scope, that I have been involved with in other groups, is
> to use a high-level vocabulary that is used often in the Access Control
> policy – PurposeOfUse. This vocabulary is items like: Treatment, Payment,
> Research, Emergency, etc…
>
>
>
> To go deeper than these two vectors through scopes in a general purpose
> healthcare access control infrastructure is futile.
>
> Next level deeper in scopes would come from workflow centric
> implementation guides. That is a specification that is defining a workflow,
> could define a scope(s) for that workflow.
>
>
>
> John
>
>
> _______________________________________________
> Openid-specs-heart mailing list
> Openid-specs-heart at lists.openid.net
> http://lists.openid.net/mailman/listinfo/openid-specs-heart
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-heart/attachments/20151211/07b653f8/attachment.html>
More information about the Openid-specs-heart
mailing list