Skip to content

Commit 392bd48

Browse files
authored
Merge pull request #195 from kenjis/feat-jwt
feat: JWT Authenticator
2 parents 779bb12 + 1b9fdf9 commit 392bd48

File tree

36 files changed

+2209
-11
lines changed

36 files changed

+2209
-11
lines changed

README.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,20 +15,29 @@ The primary goals for Shield are:
1515

1616
## Authentication Methods
1717

18-
Shield provides two primary methods of authentication out of the box:
18+
Shield provides two primary methods **Session-based** and **Personal Access Codes**
19+
of authentication out of the box.
1920

20-
**Session-based**
21+
It also provides **JSON Web Tokens** authentication.
22+
23+
### Session-based
2124

2225
This is your typical email/username/password system you see everywhere. It includes a secure "remember me" functionality.
2326
This can be used for standard web applications, as well as for single page applications. Includes full controllers and
2427
basic views for all standard functionality, like registration, login, forgot password, etc.
2528

26-
**Personal Access Codes**
29+
### Personal Access Codes
2730

2831
These are much like the access codes that GitHub uses, where they are unique to a single user, and a single user
2932
can have more than one. This can be used for API authentication of third-party users, and even for allowing
3033
access for a mobile application that you build.
3134

35+
### JSON Web Tokens
36+
37+
JWT or JSON Web Token is a compact and self-contained way of securely transmitting
38+
information between parties as a JSON object. It is commonly used for authentication
39+
and authorization purposes in web applications.
40+
3241
## Some Important Features
3342

3443
* Session-based authentication (traditional email/password with remember me)

composer.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,15 @@
2525
"codeigniter4/devkit": "^1.0",
2626
"codeigniter4/framework": "^4.2.7",
2727
"mikey179/vfsstream": "^1.6.7",
28-
"mockery/mockery": "^1.0"
28+
"mockery/mockery": "^1.0",
29+
"firebase/php-jwt": "^6.4"
2930
},
3031
"provide": {
3132
"codeigniter4/authentication-implementation": "1.0"
3233
},
3334
"suggest": {
34-
"ext-curl": "Required to use the password validation rule via PwnedValidator class."
35+
"ext-curl": "Required to use the password validation rule via PwnedValidator class.",
36+
"ext-openssl": "Required to use the JWT Authenticator."
3537
},
3638
"minimum-stability": "dev",
3739
"prefer-stable": true,

0 commit comments

Comments
 (0)