2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

手順: JWTを使用してHasuraの認可トークンを生成する

Last updated at Posted at 2023-01-12

HasuraとJWTは、Webアプリケーション開発において重要な役割を担う技術です。Hasuraは、GraphQL APIを構築するためのオープンソースのプラットフォームであり、JWTは、Webアプリケーションでの認証と認可に使用される標準規格です。

今回は、HasuraでJWTを使用して認可トークンを生成する手順を紹介します。

STEPS:

有シークレットキーを生成し https://cloud.google.com/network-connectivity/docs/vpn/how-to/generating-pre-shared-key

Pasted Graphic.png

私の場合、このキーを生成しました。“Pn/t8ZuDDsja1wkTSQyXbqnDT/N8X0SG”

ステップを追って、サイトを開きます。 https://jwt.io

そして、私たちのデコードされたキーとエンコードされたキーを作成します

Pasted Graphic 1.png

ここに、生成したキー(私の場合は「Pn/t8ZuDDsja1wkTSQyXbqnDT/N8X0SG」)を入力します。

ペイロードを宣言します。

{
  "sub": "1234567890",
  "name": "John Doe",
  "iat": 1516239022,
  "https://hasura.io/jwt/claims": {
    "x-hasura-allowed-roles": ["admin", "user"],
    "x-hasura-default-role": "user",
    "x-hasura-user-id": "1234567890",
    "x-hasura-org-id": "123",
    "x-hasura-custom": "custom-value"
  }
}

私は役割として管理者とユーザーを使用しています。詳細については、こちらをご覧ください: https://hasura.io/docs/latest/auth/authentication/jwt/

Pasted Graphic 2.png

次に、HasuraのWebページのenv変数に移動します。そして設定します。

HASURA_GRAPHQL_JWT_SECRET

この内容で:

{
    "key": "Pn/t8ZuDDsja1wkTSQyXbqnDT/N8X0SG",
    "type": "HS256"
}

私の場合、私は前にGoogle Cloudサービスで生成した秘密鍵(Pn/t8ZuDDsja1wkTSQyXbqnDT/N8X0SG)を使用しています。覚えていますか?

Pasted Graphic 3.png

更新してから1分間待ちます。その後、コンソールに移動して、ヘッダーにJWT.ioから生成された認可(エンコードされたコード)を設定します。
「Bearer」というワードを追加し、スペースを確認してください。
例: 「Bearer あなたのエンコードされたコード」

現在、テスト中:

Pasted Graphic 5.png

JWTを使用してHasura APIを保護することで、APIへのアクセスを制御し、APIからの取得データを保護することができます

この後、バックエンドを生成するか、FirebaseやAuth0のようなサービスを使用してトークンを自動生成することができます。

そして完了です!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?