Commit Graph

288 Commits

Author SHA1 Message Date
JimMoen 593e1a3efb feat(authn): authn mnesia rows fuzzy searching by `clientid` or `username` 2022-03-10 10:01:40 +08:00
EMQ-YangM 583624fb8d fix(emqx_authn): fix test suite 2022-03-09 13:53:05 +08:00
EMQ-YangM 57adbab5ea fix(emqx_authn): fix authn suite status 2022-03-08 14:09:39 +08:00
EMQ-YangM d99db4ebfa fix(emqx_authn): add default wait_connected 2022-03-08 14:09:39 +08:00
Zhongwen Deng db584f79d6 feat: upgrade hocon to 0.25.0 to replace nullable with required. 2022-02-24 22:39:03 +08:00
JimMoen e816e3e4a3
Merge pull request #7075 from JimMoen/refactor-authz-sources-api
refactor: authz_api_sources swagger spec
2022-02-22 01:24:42 +08:00
Zhongwen Deng 9f9bf059b9 fix(schema): remove unuse to_bin function; simplify body schema. 2022-02-21 23:02:49 +08:00
JimMoen ff68e2a20f fix(http): connector and authn/authz http `keep-alive` default 30s , max 1000 2022-02-21 16:35:15 +08:00
Ilya Averyanov 634d861b90 chore(codestyle): add formatting check for Elixir code 2022-02-18 19:43:48 +03:00
Zaiming (Stone) Shi 64db085163 chore: EMQ X -> EMQX in source code 2022-02-16 22:08:12 +01:00
Zaiming (Stone) Shi 0528262705 chore(app.src): EMQ X -> EMQX in .app.src files 2022-02-16 17:51:45 +01:00
Yang Miao 78cad0a528
Merge pull request #6989 from EMQ-YangM/up_master
refactor(emqx_resource): Improve grouping strategy for emqx_resource_instance
2022-02-16 16:26:28 +08:00
JimMoen 0e5105db6e test(authn): mongo health check more than once 2022-02-15 10:41:26 +08:00
JimMoen 2a1fba97da test(auth): resource use connector provided default port 2022-02-15 10:41:26 +08:00
JimMoen ab7c2b72e3 refactor(connector): db connector provide default port 2022-02-15 00:51:48 +08:00
EMQ-YangM 75b2963efc test(authn,authz): fix create function 2022-02-14 14:10:10 +08:00
EMQ-YangM 580901b678 fix(emqx_authn): fix create api 2022-02-11 18:36:55 +08:00
Chris 14630568d6 feat: create tests for connector pgsql module and refactoring 2022-02-10 10:40:46 +01:00
Shawn 8207090419 fix: format the code to remove extra spaces 2022-02-09 18:46:49 +08:00
Zaiming (Stone) Shi d6f7ffec3c
Merge pull request #6881 from zmstone/refactor-upgrade-hocon-0.23.0
refactor: upgrade to hocon 0.23.0
2022-01-27 15:48:23 +01:00
Kian-Meng Ang fc92e4c8bf docs: fix typos 2022-01-27 12:29:38 +01:00
Zaiming (Stone) Shi 252d7e85d9 refactor: call new hocon apis 2022-01-27 00:23:08 +01:00
Ilya Averyanov 6441978b08 refactor(authn,authz): unify variable interpolation 2022-01-25 20:54:12 +03:00
zhongwencool 8b31466538 chore(trace): replace trace_filter by is_trace 2022-01-14 15:33:43 +08:00
zhongwencool 681ab6b754 fix(review): refactor function name base on review sugguestion 2022-01-14 15:00:05 +08:00
zhongwencool 1cfab9fed5 chore(log): add more detail log for authz/authn query error 2022-01-14 15:00:02 +08:00
Shawn 6572785907
Merge pull request #6712 from tigercl/fix/pgsql
fix: fix errors caused by concurrent parsing of sql
2022-01-14 13:37:47 +08:00
JimMoen 82e3565344 chore: major mode file variable for Emacs 2022-01-13 15:53:47 +08:00
zhouzb 683d1c3412 test: fix test cases 2022-01-13 14:27:36 +08:00
Zaiming (Stone) Shi cc2ae5ed71
Merge pull request #6624 from HJianBo/fix-conf-name-prefix
Remove `emqx_` prefix for some config scopes
2022-01-12 20:36:52 +01:00
Zaiming (Stone) Shi 641fe64d00 docs: ensure authn schema ns for password-hash structs 2022-01-12 15:48:30 +01:00
JianBo He af2868e598 chore(dashboard): change root name emqx_dashboard > dashboard 2022-01-12 13:51:34 +08:00
zhouzb ac631110cb chore: remove useless field 2022-01-11 10:05:11 +08:00
zhouzb 2791052135 fix: fix errors caused by concurrent parsing of sql 2022-01-11 09:39:56 +08:00
zhouzb 821b50a961 test(mongo): add test case for w_mode option 2022-01-07 09:52:15 +08:00
Thales Macedo Garitezi 9059f2005a
fix(elixir): put Patch in version and add missing deps
Elixir requires that we use version of the form `Major.Minor.Patch`.
Also, Mix requires dependecies to be declared in `rebar.config` so it
can include the header files correctly.
2022-01-06 10:54:45 -03:00
zhongwencool 3bdfa183f3
Merge pull request #6666 from JimMoen/merge-5.0-beta.3-to-master
Merge 5.0 beta.3 to master
2022-01-06 18:20:30 +08:00
JimMoen 9a115b99a4 Merge remote-tracking branch 'emqx/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-06 14:08:45 +08:00
Zaiming (Stone) Shi 63167cea70 chore: update copyright 2022-01-05 20:55:00 +01:00
JimMoen 6affb5aca1 fix(authn): authn http resource url query string 2022-01-04 18:13:27 +08:00
Zaiming (Stone) Shi f866488bc2 test: fix mongodb tls suite
dryruns return error when local health check fails
2022-01-03 16:22:44 +01:00
Zaiming (Stone) Shi 2898fa76e1 Merge remote-tracking branch 'origin/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-03 11:39:06 +01:00
Shawn e1ab331a30 refactor(resource): support async create mode 2022-01-02 20:20:39 +08:00
Ilya Averyanov 852033a955
Merge pull request #6525 from savonarola/authn-ssl-tests
chore(authn): test authn ssl settings
2022-01-01 13:41:37 +03:00
Shawn efec4564f0 fix(resource): update test cases on resource not_found 2021-12-31 22:25:45 +08:00
Shawn f65eca4c47 fix(authn): update testcase for resource not running 2021-12-31 21:08:07 +08:00
zhongwencool 489fb7f806 fix(trace): copy binary:encode_hex/2 from binary.erl 2021-12-30 21:38:23 +08:00
Ilya Averyanov 7208669946 chore(authn): reduce number of pre-generated certificates, refactor
tests
2021-12-30 13:49:14 +03:00
zhongwencool 43141dffee
Merge branch 'release-5.0-beta.3' into trace-formatter 2021-12-29 22:37:59 +08:00
Ilya Averyanov 2b3d3ebb0a chore(authn): test JWT authn with HTTPS key server 2021-12-29 16:24:57 +03:00
Ilya Averyanov f230c20521 chore(authn): test HTTPS authn 2021-12-29 16:24:57 +03:00
Ilya Averyanov a7ca6cb39f chore(authn): test MongoDB authn via ssl connection 2021-12-29 16:24:52 +03:00
zhongwencool 121d906992 chore(log): add SLOG/3 to add meta info 2021-12-29 14:48:48 +08:00
zhouzb d26042703e chore: provide prepared_query and equery 2021-12-28 09:52:31 +08:00
Ilya Averyanov e2e2c98679 chore(authn): test Mysql authn via ssl connection 2021-12-27 11:16:31 +03:00
Ilya Averyanov 6de89d1207 chore(authn): test PostgreSQL authn via ssl connection 2021-12-27 11:16:31 +03:00
Ilya Averyanov 520629d6e2 chore(authn): test Redis authn via ssl connection 2021-12-27 11:16:31 +03:00
zhouzb 9769ddeb14 fix(authn): attempt to convert certificate content only when TLS is enabled 2021-12-24 13:40:13 +08:00
Thales Macedo Garitezi 34d6dbca61
chore(mix): simplify build by using rebar3 for umbrella apps
By treating the apps in the umbrella as dependencies to be managed and
built by rebar3, we can simplify the maintenance of the release, at
the cost of increased build times: using Mix as before, it could track
changed files better than using rebar.  But the complexity and
possibility of discrepancies make it using rebar much more compelling.
2021-12-22 09:40:01 -03:00
Thales Macedo Garitezi 917575de5a
chore(mix): minimal elixir mix release build
This commit enables a minimal working build of EMQX release using
Mix.  However, to properly start the release, several configuration
steps are still missing.  A `mix_release.sh` script does a few hacks
to get the release built with Mix to start properly, by first assuming
that `make emqx` has been run prior to the release, ran once to
generate the `app.*.config` files, and then it copies that and some
other files to the expected places.

Also, `emqx_telemetry` hangs the start procedure because it thinks
it's in an official release and tries to make a request.  We disable
it temporarily via config just to get a working build for now.
2021-12-21 13:51:22 -03:00
Ilya Averyanov b8a68d7a9f
Merge pull request #6384 from savonarola/refactor-password-hashing
refactor(authn): unify password hashing
2021-12-14 16:21:02 +03:00
Ilya Averyanov 708d9cfc6c refactor(authn): restore pbkdf2 password hashing functionality 2021-12-13 21:40:09 +03:00
Zaiming (Stone) Shi 41aa958ac9 refactor(authn): root type as array of union
Deleted the wrapping union.
i.e. previously it's
union([union([...]), array(union([...]))]).
not it's
array(union([...]))

It is after-all a lazy type, and the dynamic check allows
single-elemented arrays not to have `[]` around it.

the old union of array of union schema was just adding confusion
2021-12-11 22:20:53 +01:00
Ilya Averyanov 2b0a3e8ba3 refactor(authn): unify password hashing 2021-12-07 23:38:26 +03:00
Zaiming (Stone) Shi 68a7c096b0
Merge pull request #6362 from zmstone/emqx-config-put-raw-with-env-vars
fix: config put raw with env vars
2021-12-06 09:22:32 +01:00
Zaiming (Stone) Shi 89614245f6 test: use macro for authentication root name 2021-12-06 08:00:42 +01:00
Zaiming (Stone) Shi 5d3cb6ae1c refactor(authn): align authn config root name
authn configs are checked independently per-auth provider,
this was to make authn providers more plugable.

in order to make environment variable overrides work for authn,
we need to have a unified view of the config layout,
no matter from root level, or partially checking per-provider
config independently, i.e. we try to use the same config envelop.
2021-12-04 09:33:14 +01:00
zhouzb 1dfc37cd18 test(authn): fix test cases 2021-12-03 15:55:34 +08:00
zhouzb e1bcbd012c feat(authn): support sync configuration in the cluster 2021-12-03 14:14:40 +08:00
JimMoen 68af284570 fix(authz): http source create and update 2021-12-02 10:12:10 +08:00
zhouzb b983a18cdf fix(auth): replace query with cmd 2021-12-01 20:24:43 +08:00
zhouzb 6b8997cbda fix(authn): fix superuser when missing is_superuser_field 2021-12-01 09:23:36 +08:00
Ilya Averyanov 6b65151f69
Merge pull request #6325 from savonarola/test-authn-resources-scram
chore(authn): add SCRAM mechanism tests
2021-11-30 12:16:20 +03:00
Ilya Averyanov e6d7e59c18
Merge pull request #6278 from savonarola/test-authn-resources-mongo
chore(authn): add MongoDB backend tests
2021-11-29 22:27:52 +03:00
Ilya Averyanov 390575eafb chore(authn): add MongoDB backend tests 2021-11-29 21:17:56 +03:00
Ilya Averyanov 4580c03ebc chore(authn): add SCRAM mechanism tests 2021-11-29 20:49:45 +03:00
Ilya Averyanov 726e25d6ae chore(authn): add JWKS backend tests 2021-11-26 18:40:21 +03:00
zhongwencool f697028b70
Fix ping not return pong (#6285)
* fix: ./bin/emqx ping return pong

* chore: waiting longer for logger flush log to disk

* fix: change swagger page's limit from 100 to 1000

* chore: type wrong

* fix: sync log to disk by logger_disk_log_h:filesync
2021-11-26 17:02:45 +08:00
tigercl 124ba7a071
Merge pull request #6311 from emqx/release-5.0-beta.2
Sync bug fixes
2021-11-26 14:24:19 +08:00
zhouzb 349fd1608b style(authn): improve code formatting 2021-11-26 10:29:57 +08:00
Ilya Averyanov e6c2600718 chore(authn): add HTTP backend tests 2021-11-25 15:09:13 +03:00
zhouzb ecd3c9f85c test(authn): add test cases for jwt authn 2021-11-25 19:03:11 +08:00
zhouzb 15654b5b28 fix(authn): add handling of invalid secret 2021-11-25 17:17:44 +08:00
zhouzb d88bfdfe14 fix(authn): verify claims type is wrong 2021-11-25 16:42:08 +08:00
Ilya Averyanov ac3707e4a9 fix(authn): handle authn backends own validations 2021-11-24 14:05:46 +03:00
Ilya Averyanov 8cc0b43de7 chore(authn): add MySQL & PostgreSQL backend tests 2021-11-23 11:52:51 +03:00
DDDHuang 21bd9bba55
fix: generate palce holder (#6250)
* fix: generate place holder

* style: whitespace cleanup

* refactor(authz): placeholder for athuz

* test: authz test suite for placeholder

* fix: lw place holder suite

* fix: auth n redis suite

Co-authored-by: JimMoen <LnJimMoen@outlook.com>
2021-11-23 10:56:43 +08:00
Shawn 6fb464fc05
Merge pull request #6059 from tigercl/fix/ssl
fix(ssl): fix API returns the certificate file name instead of the certificate content
2021-11-23 10:38:12 +08:00
JianBo He 50542ec441
Merge pull request #6248 from HJianBo/gw-improve-apis-1
Add authentication data management APIs for gateway
2021-11-23 09:12:04 +08:00
zhouzb 2b282b9666 fix(ssl): Return the content of certificates in HTTP response 2021-11-22 23:30:05 +01:00
Ilya Averyanov 071c2c99e8 refactor(authn resources): add `emqx_resource` and `emqx_authn` tests 2021-11-22 21:08:04 +03:00
JianBo He 1e2eac0fce test(gw): add tests for authm data-mgmt 2021-11-22 17:38:59 +08:00
JianBo He 4f752fb5ab chore(gw): fix elvis warnings 2021-11-22 17:38:59 +08:00
JianBo He f033fad7b3 refactor(gw): deps on emqx_dasboard_swagger 2021-11-22 17:38:59 +08:00
Shawn f0c61068e8 fix(authn): test cases issues 2021-11-22 17:35:33 +08:00
tigercl 6da039cf4f
Merge pull request #6231 from tigercl/fix/http-authn
fix(authn): fix pick worker error and match more http response
2021-11-22 09:10:44 +08:00
Ilya Averyanov c86887491c fix(authn): transfer chain tab to emqx_authentication_sup
To preserve configuration after emqx_authentication crashes.
2021-11-19 16:41:22 +03:00
zhouzb 980a6ceae9 fix(authn): fix pick worker error and match more http response 2021-11-19 11:19:52 +08:00
DDDHuang 7c48bcabed
fixt: generate api (#6124)
* fix: generate api

* fix: banned suite

* fix: generate api bad rpc

* fix: bad message suite

* fix: create banned with check existed
2021-11-17 10:55:48 +08:00
JimMoen c05ecdbcb8
fix(api): DELETE success wrongly returned code 200 (#6135) 2021-11-16 09:28:57 +08:00