0

用户可以将其他用户添加到他们的护理团队,并为其护理团队的每个成员分配一个角色。当访问另一个用户的个人资料时,系统应该检查用户是否同意这样做。

问题1:如何查看用户X是否同意查看用户Y的资料?

问题 2:Google Healthcare Consent API 可以处理这个问题吗?

问题 3:为此使用 Google Healthcare Consent API 有意义吗?

当前概念

示例用例:奶奶是病人,爱丽丝在“医生”环境中照顾她。

在当前设置中,每个护理团队成员都有一个数据映射:

{
  userId: 'id_of_alice',
  dataId: 'users/id_of_grandma/profile',
  resourceAttributes: [
    {
      attributeDefinitionId: 'careteam',
      values: ['doctor']
    }
  ]
}

我使用了两种方法来检查 Alice 是否可以访问奶奶的个人资料:

检查数据访问

dataId如果同意任何用户,则此方法将 a作为输入并返回 true。这不是很有用......我应该在我身边查找 userId 并传递角色 requestAttributes吗?(那么,Consent API 提供什么?)

评估用户同意

此方法将 auserId作为输入并返回所有同意的 dataId。这似乎不可扩展。一名医生可能会接触到成千上万的患者。

4

1 回答 1

0

根据当前文档 [1],无法同时基于 UserId 和 DataId 检查访问。据记载,每个都有自己的过程 [2][3]。

对于您的问题 #1,您需要在您的应用程序中实现某种过滤才能获得您正在寻找的内容。

对于问题 #2,Consent 管理 API 目前似乎不提供该功能。

对于您的问题 #3,同意管理 API 可以帮助您通过应用策略 [4] 来管理用户的访问权限。

值得一提的是,Consent Management API 仍处于测试阶段 [5],未来可能会包含新功能。

[1] https://cloud.google.com/healthcare/docs/how-tos/consent-access-determination [2] https://cloud.google.com/healthcare/docs/how-tos/consent-access -determination#making_consent_access_determinations_for_specific_data_elements [3] https://cloud.google.com/healthcare/docs/how-tos/consent-access-determination#making_an_access_determination_for_all_consents_for_a_user [4] https://cloud.google.com/healthcare/docs/how -tos/consent-policies [5] https://cloud.google.com/healthcare/docs/release-notes#October_08_2020

于 2021-06-30T22:50:03.100 回答