Skip to content

Commit 5e7a57f

Browse files
author
Nick Altmann
committed
DEB packaging: add auth_jwt module package
1 parent ef3a75f commit 5e7a57f

File tree

2 files changed

+31
-2
lines changed

2 files changed

+31
-2
lines changed

packaging/debian/control

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ Build-Depends: bison,
1515
libmaxminddb-dev | libgeoip-dev (>= 1.4.4),
1616
libhiredis-dev,
1717
libjson-c-dev,
18+
libjwt-dev,
1819
libldap2-dev,
1920
liblua5.1-0-dev,
2021
libmemcached-dev,
@@ -47,7 +48,8 @@ Package: opensips
4748
Architecture: any
4849
Multi-Arch: foreign
4950
Depends: adduser, python, ${misc:Depends}, ${shlibs:Depends}
50-
Suggests: opensips-b2bua-module,
51+
Suggests: opensips-auth-jwt-module,
52+
opensips-b2bua-module,
5153
opensips-berkeley-module,
5254
opensips-carrierroute-module,
5355
opensips-cgrates-module,
@@ -653,3 +655,27 @@ Description: STIR/SHAKEN support for OpenSIPS
653655
.
654656
This module adds support for implementing STIR/SHAKEN (RFC 8224, RFC 8588)
655657
Authentication and Verification services in OpenSIPS.
658+
659+
Package: opensips-auth-jwt-module
660+
Architecture: any
661+
Multi-Arch: same
662+
Depends: opensips (= ${binary:Version}),
663+
${misc:Depends},
664+
${shlibs:Depends}
665+
Description: JSON Web Tokens authentication module for OpenSIPS
666+
OpenSIPS is a very fast and flexible SIP (RFC3261)
667+
server. Written entirely in C, OpenSIPS can handle thousands calls
668+
per second even on low-budget hardware.
669+
.
670+
The module implements authentication over JSON Web Tokens. In
671+
some cases ( ie. WebRTC ) the user authenticates on another
672+
layer ( other than SIP ), so it makes no sense to
673+
double-authenticate it on the SIP layer. Thus, the SIP client
674+
will simply present the JWT auth token it received from the
675+
server, and pass it on to OpenSIPS which will use that for
676+
authentication purposes. It relies on two DB tables, one
677+
containing JWT profiles ( a profile name and it's SIP username
678+
associated to it ) and one containing JWT secrets. Each secret
679+
has a corresponding profile, the KEY used for signing the JWT
680+
and two timestamps describing a validation interval. Multiple
681+
JWT secrets can point to the same JWT profile.

packaging/debian/rules

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ ALL_MODPKG_LIST := \
5454
GEOIP REGEX IDENTITY B2BUA DBHTTP DIALPLAN MEMCACHED JSON \
5555
REDIS RABBITMQ HTTP COMPRESSION EMERGENCY \
5656
PROTO_TLS PROTO_WSS TLS_MGM REST_CLIENT LUA \
57-
SQLITE CGRATES XML SIPREC PYTHON UUID STIR_SHAKEN
57+
SQLITE CGRATES XML SIPREC PYTHON UUID STIR_SHAKEN AUTH_JWT
5858
# add SCTP only on linux systems
5959
ifeq ($(DEB_HOST_ARCH_OS),linux)
6060
ALL_MODPKG_LIST += PROTO_SCTP
@@ -216,6 +216,9 @@ STIR_SHAKEN_MOD_PATH=$(addprefix modules/, $(STIR_SHAKEN_MODULES))
216216
UUID_PKGNAME = opensips-uuid-module
217217
UUID_MODULES = uuid
218218
UUID_MOD_PATH=$(addprefix modules/, $(UUID_MODULES))
219+
AUTH_JWT_PKGNAME = opensips-auth-jwt-module
220+
AUTH_JWT_MODULES = auth_jwt
221+
AUTH_JWT_MOD_PATH=$(addprefix modules/, $(AUTH_JWT_MODULES))
219222

220223

221224
# Need this per-package variables available in environment so accessible

0 commit comments

Comments
 (0)