mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 07:08:01 +00:00
Add Generate A Signed JWT Token as a ruby til
This commit is contained in:
@@ -10,7 +10,7 @@ smart people at [Hashrocket](http://hashrocket.com/).
|
|||||||
For a steady stream of TILs from a variety of rocketeers, checkout
|
For a steady stream of TILs from a variety of rocketeers, checkout
|
||||||
[til.hashrocket.com](https://til.hashrocket.com/).
|
[til.hashrocket.com](https://til.hashrocket.com/).
|
||||||
|
|
||||||
_763 TILs and counting..._
|
_764 TILs and counting..._
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -601,6 +601,7 @@ _763 TILs and counting..._
|
|||||||
- [FactoryGirl Sequences](ruby/factory-girl-sequences.md)
|
- [FactoryGirl Sequences](ruby/factory-girl-sequences.md)
|
||||||
- [Fail](ruby/fail.md)
|
- [Fail](ruby/fail.md)
|
||||||
- [Finding The Source of Ruby Methods](ruby/finding-the-source-of-ruby-methods.md)
|
- [Finding The Source of Ruby Methods](ruby/finding-the-source-of-ruby-methods.md)
|
||||||
|
- [Generate A Signed JWT Token](ruby/generate-a-signed-jwt-token.md)
|
||||||
- [Generate Ruby Version And Gemset Files With RVM](ruby/generate-ruby-version-and-gemset-files-with-rvm.md)
|
- [Generate Ruby Version And Gemset Files With RVM](ruby/generate-ruby-version-and-gemset-files-with-rvm.md)
|
||||||
- [Identify Outdated Gems](ruby/identify-outdated-gems.md)
|
- [Identify Outdated Gems](ruby/identify-outdated-gems.md)
|
||||||
- [If You Detect None](ruby/if-you-detect-none.md)
|
- [If You Detect None](ruby/if-you-detect-none.md)
|
||||||
|
|||||||
19
ruby/generate-a-signed-jwt-token.md
Normal file
19
ruby/generate-a-signed-jwt-token.md
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
# 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.
|
||||||
Reference in New Issue
Block a user