File tree Expand file tree Collapse file tree 5 files changed +38
-14
lines changed Expand file tree Collapse file tree 5 files changed +38
-14
lines changed Original file line number Diff line number Diff line change @@ -154,8 +154,8 @@ module.exports = {
154154 }
155155 } ,
156156 rs256 : {
157- pub : '/home/facugon/workspace/theeye/theeye-supervisor/config/jwtRS256.key.pub' ,
158- priv : '/home/facugon/workspace/theeye/theeye-supervisor/config/jwtRS256.key'
157+ pub : null ,
158+ priv : null
159159 } ,
160160 secret : '692fc164a0c06a9fd02575cf17688c9e'
161161 } ,
Original file line number Diff line number Diff line change @@ -42,6 +42,13 @@ module.exports = {
4242 }
4343 }
4444 } ,
45+ authentication : {
46+ rs256 : {
47+ pub : join ( __dirname , 'jwtRS256.key.pub' ) ,
48+ priv : join ( __dirname , 'jwtRS256.key' )
49+ } ,
50+ secret : '692fc164a0c06a9fd02575cf17688c9e'
51+ } ,
4552 monitor : {
4653 disabled : true ,
4754 fails_count_alert : 3 ,
Original file line number Diff line number Diff line change 22 * replace here the default configuration values for your
33 * local development environment
44 */
5+ const { join } = require ( 'path' )
6+
57module . exports = {
68 storage : {
79 driver : "local"
@@ -47,6 +49,10 @@ module.exports = {
4749 } ,
4850 authentication : {
4951 // same key must be in every internal service
52+ rs256 : {
53+ pub : join ( __dirname , 'jwtRS256.key.pub' ) ,
54+ priv : join ( __dirname , 'jwtRS256.key' )
55+ } ,
5056 secret : '692fc164a0c06a9fd02575cf17688c9e' ,
5157 protocol : 'http' , // http or https
5258 api : {
Original file line number Diff line number Diff line change 11const config = require ( 'config' )
22const jwt = require ( 'jsonwebtoken' )
3+ const fs = require ( 'fs' )
34
45module . exports = {
56 create ( context ) {
6- const key = config . authentication . rs256 . priv
7- return jwt . sign (
8- { context } ,
9- key , // our Private Key
10- {
11- expiresIn : 60 , // seconds
12- algorithm : "RS256"
13- }
14- )
7+ const authCfg = config . authentication
8+
9+ // seconds
10+ const signSettings = { expiresIn : 60 }
11+
12+ let key
13+ if ( authCfg . rs256 ?. priv ) {
14+ key = fs . readFileSync ( authCfg . rs256 . priv , 'utf8' )
15+ signSettings . algorithm = "RS256"
16+ } else {
17+ key = authCfg . secret
18+ signSettings . algorithm = "HS256"
19+ }
20+
21+ if ( ! key ) {
22+ throw new Error ( 'Authorization system: security key not set' )
23+ }
24+
25+ return jwt . sign ( { context } , key , signSettings )
1526 }
1627}
Original file line number Diff line number Diff line change 3737 <!-- Docsify v4 -->
3838 < script src ="//cdn.jsdelivr.net/npm/docsify@4 "> </ script >
3939 < script src ="//cdn.jsdelivr.net/npm/docsify/lib/plugins/emoji.min.js "> </ script >
40- < script src ="//cdn.jsdelivr.net/npm/docsify/lib/plugins/search.min.js "> </ script >
41- < script src ="//cdn.jsdelivr.net/npm/docsify-copy-code "> </ script >
42- < script src ="//cdn.jsdelivr.net/npm/docsify-tabs@1 "> </ script >
40+ < script src ="//cdn.jsdelivr.net/npm/docsify-copy-code/dist/docsify-copy-code.min.js "> </ script >
4341 < script
4442 src ="//cdn.jsdelivr.net/npm/docsify-darklight-theme@latest/dist/index.min.js "
4543 type ="text/javascript ">
4644 </ script >
45+ < script src ="//cdn.jsdelivr.net/npm/docsify/lib/plugins/search.min.js "> </ script >
46+ < script src ="//cdn.jsdelivr.net/npm/docsify-tabs@1 "> </ script >
4747 < script src ="//cdn.jsdelivr.net/npm/prismjs@1/components/prism-bash.min.js "> </ script >
4848 < script src ="//cdn.jsdelivr.net/npm/prismjs@1/components/prism-batch.min.js "> </ script >
4949 < script src ="//cdn.jsdelivr.net/npm/prismjs@1/components/prism-powershell.min.js "> </ script >
You can’t perform that action at this time.
0 commit comments