GraphQL 最近发布了,似乎鼓励在客户端编写查询。
- 是什么使得在客户端编写GraphQL查询安全,而不是SQL查询?
- GraphQL不受注射吗?
- 如果在客户端提供查询非常有用,为什么不让SQL版本不受注入?
由于在松弛频道中回复它的用户没有回答这个问题,我会发布他们的答案。
- GraphQL查询针对明确构建的模式进行验证,以向客户端公开数据。 SQL不会针对除数据库架构结构之外的任何内容验证您的查询。
- 从理论上讲,您的GraphQL端点具有某种安全性,可以验证用户是否可以在查询的起始点查询数据。一旦它们位于基于图形的模式中,权限就是graphQL模式定义所固有的,并且注入不会完成任何事情。
- 制作一个不受注入的SQL版本将涉及GraphQL所做的一些相同的验证。某种验证允许所有请求的数据/突变。正如聊天中所引用的那样,“注入不是SQL固有的问题”。
答案归功于 查理 和 samwgoldman 来自GraphQL / #s general Slack聊天。
由于在松弛频道中回复它的用户没有回答这个问题,我会发布他们的答案。
- GraphQL查询针对明确构建的模式进行验证,以向客户端公开数据。 SQL不会针对除数据库架构结构之外的任何内容验证您的查询。
- 从理论上讲,您的GraphQL端点具有某种安全性,可以验证用户是否可以在查询的起始点查询数据。一旦它们位于基于图形的模式中,权限就是graphQL模式定义所固有的,并且注入不会完成任何事情。
- 制作一个不受注入的SQL版本将涉及GraphQL所做的一些相同的验证。某种验证允许所有请求的数据/突变。正如聊天中所引用的那样,“注入不是SQL固有的问题”。
答案归功于 查理 和 samwgoldman 来自GraphQL / #s general Slack聊天。