Git Product home page Git Product logo

Comments (9)

brochlabs avatar brochlabs commented on August 26, 2024 1

from fhir-server-samples.

medlab001 avatar medlab001 commented on August 26, 2024

Ahh, I see, I missed this. Thanks for that!
If I'd rather use my way of authentication/authorization, how do I handle that?

from fhir-server-samples.

brochlabs avatar brochlabs commented on August 26, 2024

from fhir-server-samples.

medlab001 avatar medlab001 commented on August 26, 2024

Details, well I'm still starting out with this, so I'm actually looking for info on how to accomplish this. From your suggestion, I could use B2C for this, and seems to meet all the requirements, such as user types for access control. In case I go ahead with B2C, how do I tie a user's info to the B2C account? I'll need an API b/w B2C and FHIR server, correct? This API will be the one that checks that the user is authorized to view that information.

Also, after creating the B2C tenant, do I need to migrate all my apps that use it to that directory?

I'll clarify a custom solution once I'm up to speed with B2C usage. Thanks for your help!

from fhir-server-samples.

medlab001 avatar medlab001 commented on August 26, 2024

@brochlabs
I was able to configure Azure B2C, thanks for the info! With that directly connected to FHIR server, I can see all the info.
This page suggests that external auth is required for fine-grained access, such a patient being able to access only their data. My idea was to use Ocelot to inspect the tokens, (and extended permissions stored, say in CosmosDB) and then forward the request to the FHIR server. Have I got this right?

from fhir-server-samples.

brochlabs avatar brochlabs commented on August 26, 2024

from fhir-server-samples.

medlab001 avatar medlab001 commented on August 26, 2024

Yeah this is starting to make sense.
But I ran into an issue. I'm using the Azure API for FHIR, so can't customize the auth pattern there much. For each incoming request, token validation isn't enough. I'll need to check if an physician can view a corresponding patient's data, but there's no such info on the server. If I understood you right, I store this mapping elsewhere, such as a <insert DB + private API, perhaps> and then query it for the given request, and conditionally forward it to FHIR, correct? The trick here, that I must be careful about, is that on new 'relation' (such as a patient being assigned a physician), I must first update my setup, and then update FHIR, so that I'll know what patients to retrieve given a physician. Not sure if I can use Redis here, since it might lose data when there's a crash.

Do let me know if I've got this right.

Thank your very much for your kind help, it's been really invaluable in clarifying how things work, and how I'm supposed to integrate all these.

from fhir-server-samples.

brochlabs avatar brochlabs commented on August 26, 2024

from fhir-server-samples.

medlab001 avatar medlab001 commented on August 26, 2024

Thank you for clearing that up!

In B2C, I'm trying to bind the FHIR ID in the user's claims after they register, so that after they login, I can get their FHIR token directly.

image

I do get the ID in the token "extension_FHIRID": "", after they signin, but I am trying to update it through the graphAPI. The GraphAPI docs only talk about how to create 'open extensions' which are different from extension attributes. I can fetch these through the GraphAPI (_graphService.Users[claimsIdentity].Request().Select($"extension_{b2c-app-id}_{id_name}").GetAsync();), but I can't find any resources on hot to modify them. Could you kindly point me to the right resource?

Thank you for walking me through this, really appreciate your patience, I've made great progress!

from fhir-server-samples.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.