Получение пользователей Healthvault RecordID в приложении MVC

Кажется, я не могу понять это самостоятельно. Я пытаюсь зарегистрировать пользователя для автономного доступа к Healthvault и не могу найти достойного примера, которому менее четырех лет. HV изменился, как и MVC.

Насколько я понимаю, вам нужно в основном четыре вещи для доступа к информации пользователей на Healthvault. Сертификат приложения, идентификатор приложения, связанный с этим сертификатом, personId и recordId. (Это не помогает, что последние два получают разные имена в разных обстоятельствах.)

У меня проблемы с обработкой перенаправления после того, как HV отправляет пользователя обратно. Кажется, я не могу контролировать, куда он идет или как получить личность и запись.

Чтобы помочь мне понять, что происходит, я хочу создать очень простое MVC-приложение, в котором пользователь нажимает кнопку, его перенаправляют в Healthvault, где они проходят аутентификацию, авторизуют мое приложение, возвращаются в приложение, и я получаю их personId. и recordId. Я НЕ хочу, чтобы они аутентифицировались в моем приложении, используя HV, как это делают большинство примеров, которые я нашел.

Любая помощь в этом отношении с благодарностью.

1 ответ

Что ж, после нескольких дней работы, пытаясь разобраться в ситуации и, наконец, написать вопрос здесь, в Stackru, я понял это сам за пару часов. В некоторые дни есть прозрения, а в некоторые дни - просто Эх.

Я надеюсь подробнее остановиться на этом позже, но краткий ответ заключается в том, что я поместил атрибут Microsoft.Health.Web.MVC [RequireSignIn] на контроллер, которому я звонил. Это было сделано так, как и предполагалось, и привело меня в Healthvault, где я выполнил вход. Теперь, чтобы не быть перенаправленным обратно на тот же контроллер и не оказаться в бесконечном цикле, мне пришлось зайти в веб-конфигурацию и изменить приложение. установка NonProductionActionUrlRedirectOverride на контроллер и действие, которое я хотел закончить.

Действие в контроллере выглядит так:

// GET: Healthvault
[HttpGet]
[RequireSignIn]
public ActionResult RegisterUser()

Запись в веб-конфигурации выглядит следующим образом:

<add key="NonProductionActionUrlRedirectOverride" value="Healthvault/Index"/>

После того, как я вернусь к действию Индекс контроллера Healthvault, мне придется извлекать recordId, помимо прочего, из URI, чтобы я мог сохранить эти значения для последующего доступа к записи пациента.

Другие вопросы по тегам