Adding new "VIEW_MEMBERS" permissions restrict the scope of users visibility (#10487)
* MM-14138: Adding new "VIEW_MEMBERS" permissions restrict the scope of users visibility * Fixing gofmt * Fixing broken tests * Addressing PR review comments from Miguel de la Cruz * Removed hack * A bit nicer and cleaner code in the UserBelongsToChannels function * Adding cluster cache invalidation for user team ids * Checking in the correct order permissions to not leek existency information * Adding restrictions to TeamMembers and User status requests * Fixing tests * Fixing status endpoint permissions checks * Adding more tests * Fixing tests * More tests and making the restrictions query based only on joins * Adding more tests * Adding more tests * fixing merge problems * Reverting status changes to avoid performance issues * Adding more tests * Fixing test * i18n extract * Adding extra method for get restrictions for a team * Add the new elasticsearch functions to search users with restrictions * Add missing translation string * Rename restrictedChannelIds to restrictedToChannels * Remove ToDo * Adding the permission to the SystemAdmin role during permissions migrations
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
5b70962f71
Коммит
c8920588a0
@@ -802,7 +802,7 @@ func TestImportImportUser(t *testing.T) {
|
||||
Position: ptrStr(model.NewId()),
|
||||
}
|
||||
|
||||
teamMembers, err := th.App.GetTeamMembers(team.Id, 0, 1000)
|
||||
teamMembers, err := th.App.GetTeamMembers(team.Id, 0, 1000, nil)
|
||||
if err != nil {
|
||||
t.Fatalf("Failed to get team member count")
|
||||
}
|
||||
@@ -884,7 +884,7 @@ func TestImportImportUser(t *testing.T) {
|
||||
assert.Nil(t, err)
|
||||
|
||||
// Check no new member objects were created because dry run mode.
|
||||
tmc, err := th.App.GetTeamMembers(team.Id, 0, 1000)
|
||||
tmc, err := th.App.GetTeamMembers(team.Id, 0, 1000, nil)
|
||||
require.Nil(t, err, "Failed to get Team Member Count")
|
||||
require.Len(t, tmc, teamMemberCount, "Number of team members not as expected")
|
||||
|
||||
@@ -935,7 +935,7 @@ func TestImportImportUser(t *testing.T) {
|
||||
assert.NotNil(t, err)
|
||||
|
||||
// Check no new member objects were created because all tests should have failed so far.
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000)
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000, nil)
|
||||
require.Nil(t, err, "Failed to get Team Member Count")
|
||||
require.Len(t, tmc, teamMemberCount)
|
||||
|
||||
@@ -958,7 +958,7 @@ func TestImportImportUser(t *testing.T) {
|
||||
assert.NotNil(t, err)
|
||||
|
||||
// Check only new team member object created because dry run mode.
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000)
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000, nil)
|
||||
require.Nil(t, err, "Failed to get Team Member Count")
|
||||
require.Len(t, tmc, teamMemberCount+1)
|
||||
|
||||
@@ -991,7 +991,7 @@ func TestImportImportUser(t *testing.T) {
|
||||
assert.Nil(t, err)
|
||||
|
||||
// Check only new channel member object created because dry run mode.
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000)
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000, nil)
|
||||
require.Nil(t, err, "Failed to get Team Member Count")
|
||||
require.Len(t, tmc, teamMemberCount+1, "Number of team members not as expected")
|
||||
|
||||
@@ -1046,7 +1046,7 @@ func TestImportImportUser(t *testing.T) {
|
||||
checkPreference(t, th.App, user.Id, model.PREFERENCE_CATEGORY_THEME, team.Id, *(*data.Teams)[0].Theme)
|
||||
|
||||
// No more new member objects.
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000)
|
||||
tmc, err = th.App.GetTeamMembers(team.Id, 0, 1000, nil)
|
||||
require.Nil(t, err, "Failed to get Team Member Count")
|
||||
require.Len(t, tmc, teamMemberCount+1, "Number of team members not as expected")
|
||||
|
||||
|
||||
Ссылка в новой задаче
Block a user