David Anderson
678f151037
Factor passwd hash logic into a function
...
... rather than having it duplicated in 3 places.
Please review https://boinc.berkeley.edu/trac/wiki/CodingStyle
2018-05-02 20:09:37 -07:00
Kevin Reed
762c052315
Merge pull request #2487 from BOINC/dpa_util
...
move random_string() and dtime() from util.inc to util_basic.inc
2018-05-01 14:02:44 -05:00
Kevin Reed
aaaae625a6
Merge pull request #2488 from BOINC/dpa_preview
...
web: show title in thread preview
2018-05-01 13:58:22 -05:00
David Anderson
5914060d4b
web: change names of admin functions to e.g. admin_show_user()
...
to avoid conflict with non-admin versions
2018-05-01 10:47:38 -07:00
Kevin Reed
1d84e9fd0a
Merge pull request #2445 from BOINC/dpa_delete_user
...
Add a mechanism allowing project admins to "delete" a user
2018-04-30 15:08:48 -05:00
David Anderson
1788e03188
web: show title in thread preview
...
Why did it take me 15 years to do this?
2018-04-28 00:19:59 -07:00
David Anderson
65fc40fda2
move random_string() and dtime() from util.inc to util_basic.inc
...
PHP utilities that aren't web-specific should go in util_basic.inc
2018-04-27 14:17:56 -07:00
Kevin Reed
d2d7e68ace
web: modify token include file to provide generic functions for creating
...
and validating tokens rather than a function per type of token
2018-04-23 11:39:32 -05:00
Kevin Reed
51038b0f5b
web: change from using MySQL function unix_timestamp() to use php time()
...
in order to set value of current time
2018-04-19 08:57:36 -05:00
Kevin Reed
81b1cf50f2
web: Add html include file that makes it easy to create and verify
...
tokens for delete_account.
2018-04-18 15:29:06 -05:00
Kevin Reed
638f8284a7
web: Fix issue caused by MariaDB 10.2 allowing column defaults to use
...
functions but earlier versions and MySQL not allowing it
2018-04-18 15:28:16 -05:00
David Anderson
ad28e831b6
Merge pull request #2401 from BOINC/knr_passwd_hash
...
Move to stronger password hash
2018-04-17 11:20:04 -07:00
Kevin Reed
903674e10d
Merge pull request #2469 from BOINC/dpa_text
...
web: add functions text_start() and text_end() to limit line length
2018-04-17 09:45:44 -05:00
Kevin Reed
fbd7447cc4
Merge branch 'master' into knr_passwd_hash
...
Conflicts:
py/Boinc/setup_project.py
2018-04-17 08:35:14 -05:00
David Anderson
a5ea95ab67
Merge pull request #2453 from BOINC/knr_tokens
...
Token Mechanism
2018-04-16 13:21:21 -07:00
David Anderson
700f86db1d
web: add functions text_start() and text_end() to limit line length
...
on pages with lots of text, to make it more readable.
Width is a parameter, default 640.
2018-04-14 15:46:58 -07:00
Kevin Reed
70f8dd5202
Merge pull request #2461 from BOINC/dpa_make_user
...
admin web: add missing include file for add-user function
2018-04-10 09:29:28 -05:00
David Anderson
c5f0b4a88d
remote job submission: fix bug that caused spurious errors to be returned
...
From Steve Clark
2018-04-09 20:26:05 -07:00
David Anderson
938f10bdde
admin web: add missing include file for add-user function
2018-04-09 18:31:52 -07:00
Kevin Reed
3e585ede29
web: add default values to not null team columns that are not assigned when team
...
is created
2018-04-06 15:48:52 -05:00
Kevin Reed
4a6246a8bb
web: create token table and php object to interact with token table.
...
Add script that will delete expired tokens once a day
2018-04-06 13:30:01 -05:00
Kevin Reed
39cc8c0500
web: Replace html/inc/util.inc random_string() implementation with one
...
that is considered cryptographically secure. This required adding the
random_compat library (MIT License) to provide support for PHP versions
before 7.
2018-04-06 09:15:51 -05:00
Kevin Reed
78f96d25f3
web: refactor password hashing changes to move compatibility library as a
...
.inc file and to move common functions into user_util.inc
2018-04-04 13:47:26 -05:00
Kevin Reed
333e5c49eb
Add the password compatability library to the create project setup
...
scripts
2018-04-04 13:46:16 -05:00
Kevin Reed
df64472c11
Merge branch 'master' into knr_passwd_hash
2018-04-04 10:49:14 -05:00
David Anderson
1562265a7d
web: don't check for stop_web in page_head().
...
Allow projects to show (non-DB) content even if stop_web is present
(e.g. description of the project on front page).
stop_web really means "the DB is offline".
2018-04-03 14:44:40 -07:00
David Anderson
6093ed3a3f
Add a mechanism allowing project admins to "delete" a user
...
This leaves the user record and host records in the DB
to avoid dangling references from the result table.
It:
- changes the user name, email addr, and auth to "deleted_xxx"
- removes the user from team
- removes posts by the user
- removes PMs by the user
- removes friend connection
- removes profile
- "anonymizes" the hosts (erase IP addr and domain name)
Note 1: this is accessed by admins using a script in ops/;
It's not available to users.
Note 2: this may not satisfy the requirements of EU-GDPR
since it doesn't delete the user and host records.
2018-04-03 14:27:10 -07:00
Kevin Reed
5c5267f28c
Merge pull request #2405 from BOINC/dpa_am_auth
...
let AMs use authenticators instead of name/password
2018-03-28 10:45:58 -05:00
Kevin Reed
de11733ba2
Merge pull request #2426 from BOINC/dpa_web_rpc
...
create_account web RPC: improve parsing and error handling
2018-03-28 10:08:22 -05:00
Kevin Reed
7579067918
Merge pull request #2427 from BOINC/dpa_email_msg
...
web: use "name@xxx.yyy" instead of "name@domain" to show form of emai…
2018-03-28 08:19:17 -05:00
David Anderson
635cd537be
web: use "name@xxx.yyy" instead of "name@domain" to show form of email addr.
...
Users may not know what "domain" means.
Also don't use "name@gmail.com"; they'll think they need a gmail addr.
2018-03-27 13:11:05 -07:00
David Anderson
9dccb7831d
create_account web RPC: improve parsing and error handling
...
Projects with old server code reply with PHP warnings
interspersed with the XML.
Parse these replies manually.
2018-03-27 13:07:40 -07:00
Kevin Reed
e48bb4a7cd
Merge branch 'master' into knr_passwd_hash
2018-03-22 12:55:13 -05:00
Kevin Reed
5f7cbdb2a7
Merge branch 'master' into dpa_passwd5
2018-03-22 09:28:01 -05:00
David Anderson
1194bab1e3
Web: use https links to BOINC web site in default project config
2018-03-19 20:11:31 -07:00
Kevin Reed
1ceb1e3a24
web: Fix style incompatibilities
2018-03-13 16:49:14 -05:00
Kevin Reed
ea6f2c35ac
web: Once hashed a password does not need to be escaped when inserting
...
it into the database
2018-03-13 16:23:27 -05:00
David Anderson
13b9783c27
get_project_config.php: say whether account manager
2018-03-09 22:15:03 -08:00
David Anderson
99fbb26598
client: if account manager sends auth, use that instead of name/passwd
...
Previously, the credentials in account manager requests
were login name and password hash.
We need to keep this for compatibility with BAM and GR,
but it has problems:
- users can't change AM password
- password hash is stored on client and sent with each AM request
Solution: AM reply can include authenticator instead of name/passwd.
If so, store and use that.
Also: login_token_lookup.php needs to return auth instead of weak auth,
for both projects and AMs.
Weak auths are invalidated when user changes password.
2018-03-09 15:37:33 -08:00
Kevin Reed
2f299967aa
web: changes for improving password hashing (admin, web_rpcs)
2018-03-09 15:05:16 -06:00
Kevin Reed
cfa5cd6723
web: Fix autofocus and tab order for the login form
2018-03-09 13:51:41 -06:00
Kevin Reed
09a3666803
web: Only rehash password on login when needed
2018-03-09 09:18:01 -06:00
Kevin Reed
4b147e6cb2
web: initial changes for improving password hashing (join, change email,
...
change password, login)
2018-03-08 15:53:39 -06:00
Kevin Reed
5809474cf1
web: Add password compatability library (MIT License) from
...
https://github.com/ircmaxell/password_compat
2018-03-08 15:37:58 -06:00
Kevin Reed
2253277c38
web: Remove the confirmation password field in locations where the "show
...
password" toggle has been added
2018-03-08 12:34:30 -06:00
Kevin Reed
4c36d4c317
web: provide defaults for user.login_token and user.login_token_time
...
as the lack of them was preventing registration from working on (at
least on MariaDB 10.2)
2018-03-08 12:10:29 -06:00
Kevin Reed
0f9425c3ad
Revert "web: provide defaults for user.login_token and user.login_token_time as"
...
This commit wasn't atomic, so reverting and redoing it as two seperate
commits
This reverts commit 855ff67e47
.
2018-03-08 11:37:45 -06:00
Kevin Reed
855ff67e47
web: provide defaults for user.login_token and user.login_token_time as
...
the lack of them was preventing registration from working on (at least
on MariaDB 10.2)
2018-03-08 10:13:31 -06:00
Kevin Reed
fd73f114d2
web: add 'show password' to login and change password pages. add label to text for show password to make it easier to select
2018-03-07 12:27:23 -06:00
Kevin Reed
ce5d3ed79f
Merge pull request #2385 from BOINC/dpa_token
...
web: in download.php, use current login token if recent
2018-03-07 11:11:42 -06:00