Security 在rest服务中有一种方法(模式)来保护其他用户的数据安全吗?

Security 在rest服务中有一种方法(模式)来保护其他用户的数据安全吗?,security,design-patterns,rest,architecture,Security,Design Patterns,Rest,Architecture,在通过restful服务公开用户资源(用户数据)的上下文中, 我希望其中一个用户的数据不能从其他用户访问,如果第二个用户不是该数据的所有者。 而不是重新发明一些复杂的模型来映射每个用户身份及其数据(编程解决方案) ,是否有一些最佳实践或设计模式或任何类型的模型可以应用于此问题?。 对于用户配置文件,我可以保证某些类型的用户无法访问另一类用户的数据,但我不能确保相同配置文件的用户不会访问另一类用户的数据。您需要对用户进行身份验证,然后将用户与数据关联(您称之为complex/programatic

在通过restful服务公开用户资源(用户数据)的上下文中, 我希望其中一个用户的数据不能从其他用户访问,如果第二个用户不是该数据的所有者。 而不是重新发明一些复杂的模型来映射每个用户身份及其数据(编程解决方案) ,是否有一些最佳实践或设计模式或任何类型的模型可以应用于此问题?。
对于用户配置文件,我可以保证某些类型的用户无法访问另一类用户的数据,但我不能确保相同配置文件的用户不会访问另一类用户的数据。

您需要对用户进行身份验证,然后将用户与数据关联(您称之为complex/programatic)或者,您只需使数据对除创建它的用户之外的所有人都不可读。就像用户使用私钥加密所有数据,然后将其存储在服务器上一样。这有点不同,因为任何人都可以访问数据,他们只是不能理解它

我不推荐第二种方法,因为您将无法使用配置文件数据(出生日期、兴趣、该配置文件中的任何内容),而且每个人都可以看到加密的数据


但你认为这是在重新创造复杂的东西,这是自相矛盾的,如果它如此复杂,为什么要在有基于身份验证的方案可供使用的情况下重新创造它呢。这种情况下的安全性是事后考虑的吗?如果是这样,那就不应该了。如果您能保证这一点,那么交付它应该是一个高度优先事项。

您要么需要对用户进行身份验证,然后将用户与数据关联(您称之为complex/programatic),要么只是使数据对除创建它的用户之外的所有人都不可读。就像用户使用私钥加密所有数据,然后将其存储在服务器上一样。这有点不同,因为任何人都可以访问数据,他们只是不能理解它

我不推荐第二种方法,因为您将无法使用配置文件数据(出生日期、兴趣、该配置文件中的任何内容),而且每个人都可以看到加密的数据


但你认为这是在重新创造复杂的东西,这是自相矛盾的,如果它如此复杂,为什么要在有基于身份验证的方案可供使用的情况下重新创造它呢。这种情况下的安全性是事后考虑的吗?如果是这样,那就不应该了。如果您对此有保证,则应优先交付。

另一个问题;它并没有专门针对REST,但我希望它能让您了解您特别想要的安全模型。关于另一个问题;它并没有专门针对REST,但我希望它能让您了解您具体需要的安全模型。是@mike,但我不记得使用过非系统配置文件(或业务配置文件)。是@mike,但我不记得使用过非系统配置文件(或业务配置文件)。