Commit graph

133 commits

Author SHA1 Message Date
Marcin Kuzminski
8d9e71fee2 caches: use better name for empty user cache, None was confusing, and looked as if it would be an error. 2020-07-03 11:04:47 +02:00
Daniel Dourvaris
0937ed89a1 auth-crawd: py3 compat 2020-05-20 10:44:04 +02:00
Marcin Kuzminski
fe96e16646 code: update copyrights to 2020 2020-04-16 00:34:52 +02:00
Marcin Kuzminski
13f313d4b5 ldap: changed plugin to help with debugging and error handling.
- mostly based from support.
2020-04-15 14:47:52 +02:00
Marcin Kuzminski
90b8007935 ldap: fixed ldaps port example to correct number. 2020-04-06 16:51:44 +02:00
Marcin Kuzminski
b7e6ccbdc0 ldap: logging fixes 2020-03-19 14:20:23 +01:00
Marcin Kuzminski
8e01135d04 Authentication: cache plugins for auth and their settings in the auth_registry.
- Before that change on each requests 4x we loaded plugins for authentication, this hit
many caches, db invalidation context and loaded the plugins logic each time. This was a heavy performance hit
for SVN and other backends as they needed to load that plugins many many times
- Since Authentication plugins almost never change, we'll not store the plugins listed for authentication into
the authnregistry for each process
- For AuthPlugins settings we now also flush plugins settings, and authnregistry cached plugins
2020-01-23 12:41:51 +01:00
Daniel Dourvaris
53980d49a6 authentication: allow super-admins to change bound authentication for users.
- we had many requests from admins on doing so, after connecting LDAP/Saml
- since admins actually started doing this via DB it's no longer a point we shouldn't enable it via UI
2019-10-10 14:08:11 +02:00
Marcin Kuzminski
928652312a core: added more accurate time measurement for called functions 2019-07-17 16:28:41 +02:00
Marcin Kuzminski
6a6d8fa92c auth: add scope and login restrictions to rhodecode plugin, and scope restriction to token plugin.
- allows limiting the usage of builtin auth to HTTP only (so force usage of tokens)
- allows migration to something like saml keeping only super-admin for login.
2019-01-16 11:03:28 +01:00
Marcin Kuzminski
26b57aead0 authentication: introduce login restriction option for builtin rhodecode plugin. 2019-01-15 11:26:25 +01:00
Marcin Kuzminski
1ead0d3876 auth: login/registration changes for upcomming new rules for login using external identities.
- show session expiration
2019-01-15 11:34:50 +01:00
Marcin Kuzminski
bd1a9c8201 docs: updated copyrights to 2019 2019-01-02 18:13:27 +01:00
Marcin Kuzminski
cbff54d3ed docs: added SAML documentation.
- Remove few obsolete replaces
- update authentication docs
- cleanups and fixes
2018-11-30 07:37:45 +01:00
Marcin Kuzminski
d7fe00f943 auth: add better logging for ldap related attributes to help track problems 2018-12-05 19:07:17 +01:00
Marcin Kuzminski
1ff28bbbfe auth: fixed docstring 2018-11-30 11:48:51 +01:00
Marcin Kuzminski
4dc9d4463e auth: UI changes
- make buttons wider to handle longer names for SAML plugins
- make order of plugins sorted again because it tends to jump arround in order
  without that sorting.
- social is now external auth
2018-11-29 18:15:55 +01:00
Marcin Kuzminski
739fc96fe7 auth-plugins: updated some code for better unicode compat. 2018-11-29 18:14:14 +01:00
Marcin Kuzminski
09013efd3b auth-plugins: some code cleanup + added docs for main plugin. 2018-11-28 13:42:28 +01:00
Marcin Kuzminski
0fd6e3f6a8 authentication: register global shared session key used for external authentication session data storeage.
- We'll have more plugins not only oauth so this should be a constant name, instead of repating the same name all over the code.
2018-11-26 23:14:55 +01:00
Marcin Kuzminski
c258d66e7b authentication: use registerd UID for plugin definition for more consistent loading of auth plugins. 2018-11-26 23:11:52 +01:00
Marcin Kuzminski
e8ec810de8 app: disconect auth plugin loading from authentication registry.
- introduce load_all flag used in skip application load time for certain actions
2018-11-26 00:15:05 +01:00
Marcin Kuzminski
f33e0ddc9f core: change from homebrew plugin system into pyramid machinery.
- it's faster to load
- homebrew system was never used as intended
- it's cleaner CE/EE code this way
2018-11-25 11:56:29 +01:00
Marcin Kuzminski
fcc18a6200 application: re-organize imports for pyramid to prepare code for speedup optimization. 2018-11-24 17:52:21 +01:00
Marcin Kuzminski
e1bbb01dab ldap: adde common ldap-ce na ldap-ee structure, and extend options
- added timeout
- make the code more shared
- allow specification of tls certdir and certfile manually
2018-11-25 18:47:15 +01:00
Marcin Kuzminski
fc6891786b auth-plugins: updated display names of plugins, and root resource. 2018-11-21 18:51:34 +01:00
Marcin Kuzminski
a7a5fe4247 auth-plugins: updated UI for authentication plugins, and allow unsorted (in order of registration) display of plugins. 2018-11-21 18:44:21 +01:00
Marcin Kuzminski
3947a873c5 auth-plugins: expose docs and icon methods for authentication. 2018-11-21 18:43:26 +01:00
Marcin Kuzminski
215c7d3beb ldap: ensure the proper cert files and dirs are set.
- addresses some issues with SSL certificates after bump of the LDAP drivers.
2018-11-20 22:05:34 +01:00
Marcin Kuzminski
9033601562 logging: use lazy parameter evaluation in log calls. 2018-09-13 17:41:35 +02:00
Marcin Kuzminski
b1bfdeb6ba caches: enable cache TTL=30s for auth-plugins.
- mostly due to this gives massive performance gains.
- most of customers choose to use it.
- svn gets *massive* boost from this.
2018-08-11 21:35:19 +02:00
Marcin Kuzminski
f1497f5afd caches: new cache context managers.
- deprecate beaker cache completly
- use new cache decorators from dogpile
- use a proper per cache key invalidation
2018-08-02 18:04:52 +02:00
Marcin Kuzminski
490e2c8a57 dependencies: bumped python-pam to 1.8.4 and fixed pam auth. 2018-07-31 16:56:20 +02:00
Marcin Kuzminski
9665179aa5 caches: use new decorator that uses conditional caches skipping dogpile if cache is disabled. 2018-07-14 18:17:42 +02:00
Marcin Kuzminski
84d673d387 caches: use dogpile for sql_cache_short region. 2018-07-12 17:20:03 +02:00
Marcin Kuzminski
cc72ded271 caches: skip cache if user is empty. 2018-07-06 14:47:09 +02:00
Marcin Kuzminski
ddc445856e caches: rewrite of auth/permission caches to dogpile. 2018-07-05 20:14:33 +02:00
Marcin Kuzminski
213cf5463d release: merge back stable branch into default 2018-05-15 16:04:13 +02:00
Marcin Kuzminski
12d382294e ldap: use connection ping only in case of single server specifed. 2018-05-04 16:13:31 +02:00
Marcin Kuzminski
a9aca0d074 email: added help block on where to change email settings 2018-04-25 12:02:44 +02:00
Marcin Kuzminski
35d60afec4 auth-plugins: fixed problem with cache of settings in multi-worker mode.
- previous implementation had a bug that cached the settings in each class, caused not refreshing
the update of settings in multi-worker mode. Only restart of rhodecode loaded new settings.
2018-04-10 11:47:00 +02:00
Marcin Kuzminski
f7c75e1cf6 auth: use more consistent logging on failed logs.
- auth-token, auth-rhodecode uses info for OK, and warn for failed logins.
- using error logs can cause wrong expectations about failure to loging due to an error.
2018-04-09 13:31:57 +02:00
Marcin Kuzminski
89bf42d803 auth-plugins: use a nicer visual display of auth plugins that would highlight that order is
important.

- fixed help text.
2018-03-27 13:50:56 +02:00
Marcin Kuzminski
a8428e7271 auth-ldap: added connection pinning and timeout option to ldap plugin 2018-03-27 11:51:37 +02:00
Marcin Kuzminski
6847122bc5 cli: skip auth plugin search/registry in case of cli invocation for faster execution of those actions.
- we don't need to load plugins for CLI calls
2018-03-01 16:46:49 +01:00
Marcin Kuzminski
46ce151bf7 setup: catch and don't stop on any exception in fetching the legacy plugins. 2018-03-01 13:13:19 +01:00
Marcin Kuzminski
ff0e89625a logging: improve auth log chain for easier debugging. 2018-02-28 14:16:15 +01:00
Marcin Lulek
bb9a4574cb auth: fix regression on cache manage namespace generation in case of external plugins a new users. 2018-02-21 10:39:13 +01:00
Marcin Kuzminski
d06a62c340 logging: improve consistency of auth plugins logs. 2018-02-19 14:49:21 +01:00
Marcin Kuzminski
0cbdfc3f23 ldap: enable connection recycling on LDAP plugin. 2018-02-16 10:57:29 +01:00