Commit Graph

58 Commits

Author SHA1 Message Date
Manush Dodunekov
1751d5fcf2 Restricted users (#6274)
* Restricted users (#4334): initial implementation

* Add User.IsRestricted & UI to edit it

* Pass user object instead of user id to places where IsRestricted flag matters

* Restricted users: maintain access rows for all referenced repos (incl public)

* Take logged in user & IsRestricted flag into account in org/repo listings, searches and accesses

* Add basic repo access tests for restricted users

Signed-off-by: Manush Dodunekov <manush@stendahls.se>

* Mention restricted users in the faq

Signed-off-by: Manush Dodunekov <manush@stendahls.se>

* Revert unnecessary change `.isUserPartOfOrg` -> `.IsUserPartOfOrg`

Signed-off-by: Manush Dodunekov <manush@stendahls.se>

* Remove unnecessary `org.IsOrganization()` call

Signed-off-by: Manush Dodunekov <manush@stendahls.se>

* Revert to an `int64` keyed `accessMap`

* Add type `userAccess`
* Add convenience func updateUserAccess()
* Turn accessMap into a `map[int64]userAccess`

Signed-off-by: Manush Dodunekov <manush@stendahls.se>

* or even better: `map[int64]*userAccess`

* updateUserAccess(): use tighter syntax as suggested by lafriks

* even tighter

* Avoid extra loop

* Don't disclose limited orgs to unauthenticated users

* Don't assume block only applies to orgs

* Use an array of `VisibleType` for filtering

* fix yet another thinko

* Ok - no need for u

* Revert "Ok - no need for u"

This reverts commit 5c3e886aab.

Co-authored-by: Antoine GIRARD <sapk@users.noreply.github.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
2020-01-13 18:33:46 +01:00
David Svantesson
8ad2697611 Recalculate repository access only for specific user (#8481)
* Recalculate repository access only for specific user

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Handle user repositories as well, and only add access if minimum mode

* Need to get repo owner to check if organization
2019-10-15 01:55:21 +01:00
zeripath
be666b03ee Trace Logging on Permission Denied & ColorFormat (#6618)
* Add log.ColorFormat and log.ColorFormatted

Structs can now implement log.ColorFormatted to provide their own
colored format when logged with `%-v` or additional flags.

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add basic ColorFormat to repository and user

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add basic ColorFormat to access and unit

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add ColorFormat to permission and on trace log it

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add log.NewColoredIDValue to make ID value coloring consistent

Signed-off-by: Andrew Thornton <art27@cantab.net>

* formatting changes

* Add some better tracing to permission denied for read issues/pulls

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add Trace logging on permission denied

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Remove isTrace() check from deferred func

* Adjust repo and allow logging of team

* use FormatInt instead of Itoa

* Add blank line

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Update access.go
2019-04-22 23:40:51 +03:00
Lunny Xiao
eabbddcd98
Restrict permission check on repositories and fix some problems (#5314)
* fix units permission problems

* fix some bugs and merge LoadUnits to repoAssignment

* refactor permission struct and add some copyright heads

* remove unused codes

* fix routes units check

* improve permission check

* add unit tests for permission

* fix typo

* fix tests

* fix some routes

* fix api permission check

* improve permission check

* fix some permission check

* fix tests

* fix tests

* improve some permission check

* fix some permission check

* refactor AccessLevel

* fix bug

* fix tests

* fix tests

* fix tests

* fix AccessLevel

* rename CanAccess

* fix tests

* fix comment

* fix bug

* add missing unit for test repos

* fix bug

* rename some functions

* fix routes check
2018-11-28 19:26:14 +08:00
Ethan Koenig
ec0ae5d50c Refactor and fix incorrect comment (#1247) 2017-03-15 08:51:46 +08:00
Ethan Koenig
c5f0d4b1a0 Fix SQL bug in models/access (#583)
Previously got a 'relation repo_access does not exist' error in User_GetRepositoryAccesses
2017-01-05 08:57:54 +08:00
Ethan Koenig
1207bda94b Fix typos in models/ (#576) 2017-01-05 08:50:34 +08:00
Lunny Xiao
c463b1b8cb Optimization for user.GetRepositoryAccesses to reduce db query times (#495)
* optimization for user.GetRepositoryAccesses to reduce db query times

* fix missing cache
2016-12-28 09:34:35 +08:00
Bwko
2bb1601d7c Lint models/access.go 2016-11-26 01:07:57 +01:00
Thibault Meyer
b0ddced2b5
Merge remote-tracking branch 'upstream/master' into feature/rewrite-xorm-queries
# Conflicts:
#	models/git_diff.go
#	models/issue.go
#	models/org.go
#	models/pull.go
#	models/repo.go
2016-11-10 21:05:52 +01:00
Thibault Meyer
a4454f5d0f
Rewrite XORM queries 2016-11-10 20:59:51 +01:00
Sandro Santilli
4247304f5a Update import paths from github.com/go-gitea to code.gitea.io (#135)
- Update import paths from github.com/go-gitea to code.gitea.io
- Fix import path for travis

See https://docs.travis-ci.com/user/languages/go#Go-Import-Path
2016-11-10 17:24:48 +01:00
Sandro Santilli
f388661bda ACCESS_MODE_* -> AccessMode* 2016-11-07 17:20:37 +01:00
Rémy Boulanouar
2d68bd1ef9 Change import reference to match gitea instead of gogs (#37) 2016-11-03 10:29:56 -02:00
Unknwon
e74630ae3b #1384 add pagination for repositories 2016-07-24 14:32:46 +08:00
Unknwon
1f2e173a74 Refactor User.Id to User.ID 2016-07-24 01:08:22 +08:00
Unknwon
e6f927f61a #1692 api: admin list and create team under organization 2016-03-21 12:47:54 -04:00
Marin Jankovski
1314ba219e Updated and created were appended with _unix. Fresh databases have only the newly named fields. 2016-03-11 12:43:35 +01:00
Unknwon
045f14fbd0 #1146 finsih UI work for access mode of collaborators
Collaborators have write access as default, and can be changed via repository
collaboration settings page to change between read, write and admin.
2016-03-05 18:08:42 -05:00
Unknwon
2158e6fc43 fix #1997 2015-11-19 11:40:00 -05:00
Unknwon
4d3138cd10 fix #1953 2015-11-15 14:55:12 -05:00
Unknwon
f8ae161c74 fix #1302 2015-11-13 17:37:02 -05:00
Unknwon
ff35a37769 #1458: Authorities were messed up when using mysql database 2015-08-28 13:51:15 +08:00
Unknwon
1453e91f41 minor fix on API response 2015-08-19 20:08:57 +08:00
Unknwon
dea3a8c6a4 WIP: create PR - choose branch 2015-08-08 22:43:14 +08:00
Unknwon
04e596f984 #1369: nil pointer when add repo to team 2015-07-24 16:52:01 +08:00
Unknwon
663c28beb6 #1279: Removing user from collaboration removes repositiory 2015-07-14 22:56:02 +08:00
Unknwon
6f81c05dde #1143 Team member access lost when adding repository collaborator
- fix bug when add a repo to team, all other team members gets access as well
2015-03-24 18:14:04 -04:00
Unknwon
588f3215c6 #1040: dashboard no longer accessible when repo is missing 2015-03-16 04:04:27 -04:00
Unknwon
f44204e944 REAMDE: update 2015-02-28 21:50:04 -05:00
Unknwon
473e265727 models: done testing on new access system 2015-02-28 21:44:09 -05:00
Unknwon
8896c82d34 models: fix issue with transfer repository
README: fix typo
2015-02-24 00:27:22 -05:00
Unknwon
ee68a826a5 v4 migration, merge 'dev', clean code and mirror fix 2015-02-23 02:15:53 -05:00
Unknwon
25f5a8d798 some fixes, but not done yet! 2015-02-13 02:56:42 -05:00
Unknwon
6d0f3a07d4 code fix #941 caution: undertest 2015-02-13 00:58:46 -05:00
Peter Smit
6c1ee384f1 Merge remote-tracking branch 'mine/access_refactor' into access_refactor
Conflicts:
	cmd/serve.go
	models/access.go
	models/migrations/migrations.go
	models/org.go
	models/repo.go
	models/user.go
	modules/middleware/org.go
	modules/middleware/repo.go
	routers/api/v1/repo.go
	routers/org/teams.go
	routers/repo/http.go
	routers/user/home.go
2015-02-12 14:25:07 +02:00
Peter Smit
0a4cda0dd4 Refactoring of the Access Table
This commit does a lot of the work of refactoring the access table in a table with id's instead of strings.

The result does compile, but has not been tested. It may eat your kittens.
2015-02-12 14:14:45 +02:00
Unknwon
7e7160eefd first pass work on migration #925 2015-02-11 21:58:37 -05:00
Peter Smit
0d158e569b Change constants to UPPERCASE_WITH_UNDERSCORE style 2015-02-09 13:36:33 +02:00
Peter Smit
4e79adf6b5 Refactoring of the Access Table
This commit does a lot of the work of refactoring the access table in a table with id's instead of strings.

The result does compile, but has not been tested. It may eat your kittens.
2015-02-06 13:18:11 +02:00
Peter Smit
fd1df86c44 Fix dashboard issue after collaboration migration 2015-02-04 16:08:55 +02:00
Peter Smit
76f8904718 Introducing Collaboration Struct 2015-01-23 09:54:16 +02:00
Unknwon
74b31566cf Finsih add/remove repo in organization 2014-08-26 18:11:15 +08:00
Unknown
e0f9c628c5 Add create organization 2014-06-25 00:44:48 -04:00
Unknown
ad5ec45dd6 Fix #165 2014-06-21 00:51:41 -04:00
Unknown
914ffa496f Show private repository activities in dashboard if has access 2014-05-08 19:17:43 -04:00
Unknown
e867283406 Assignee back end 2014-05-08 12:24:11 -04:00
Unknown
f6c4fbeb37 Collaborator 2014-05-01 11:32:12 -04:00
Unknown
49c01c0b57 Fix import path 2014-04-18 09:35:09 -04:00
Unknown
90f6aa8cd1 Add repo mirror and import 2014-04-12 20:35:35 -04:00