Make GraphQL api secure



我开始在Express中使用GQL(非常棒(。所以我有几个问题。

  1. 如何使GQL安全,以便只有我才能访问API和游乐场。喜欢Instagram。您无法访问他们的";操场";。

  2. 当我使用rest api时,为了安全起见,我通过Header发送令牌。现在把它们放在哪里?

app.use(
"/graphql",
graphqlHTTP({
schema,
graphiql: true,
})
)

谢谢

  1. 我强烈建议你不要让你的操场向生产游乐场是一个有其自身复杂性和漏洞的网络应用程序。请参阅破解GraphQL游乐场
  2. GraphQL中的身份验证与REST中的完全相同。实际上,您甚至可以在GraphQL应用程序上进行REST身份验证。您可以在这里找到更多关于如何在GraphQL中正确管理身份验证、授权和访问控制的信息:GraphQL的身份验证、权限和访问控制

对于1(操场是用你那里的graphicql标志来打开或关闭的。至于保护它,您可能希望使用一个中间位置,它检查某种传入的令牌,并根据该令牌的验证允许/拒绝该令牌。

  1. GraphQL在这方面的工作方式与REST端点完全相同。标头中的标记是标准的

最新更新