1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-03 23:28:02 +00:00
Files
til/ruby/generate-a-signed-jwt-token.md
2019-02-14 14:23:47 -06:00

20 lines
726 B
Markdown

# Generate A Signed JWT Token
The [`jwt`](https://github.com/jwt/ruby-jwt) gem is a Ruby library for
encoding and decoding JWT tokens. You can create a signed JWT with the
`#encode` method by specifying a secret and a hash algorithm.
```ruby
payload = { id: 1, email: 'user@example.com' }
secret = Rails.application.credentials.secret_key_base
token = JWT.encode(payload, secret, 'HS256')
```
This will create a JWT token that contains some JWT headers, application
data, and an encrypted secret that signs the data. This can be passed to and
from your client app as a way of identifying and authenticating a user.
See the [`jwt-ruby` docs](https://github.com/jwt/ruby-jwt) or
[jwt.io](https://jwt.io/) for more details.