mirror of
https://github.com/42wim/matterbridge.git
synced 2024-11-25 20:22:03 -08:00
1032 lines
38 KiB
Go
1032 lines
38 KiB
Go
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
package model
|
|
|
|
const (
|
|
PermissionScopeSystem = "system_scope"
|
|
PermissionScopeTeam = "team_scope"
|
|
PermissionScopeChannel = "channel_scope"
|
|
)
|
|
|
|
type Permission struct {
|
|
Id string `json:"id"`
|
|
Name string `json:"name"`
|
|
Description string `json:"description"`
|
|
Scope string `json:"scope"`
|
|
}
|
|
|
|
var PERMISSION_INVITE_USER *Permission
|
|
var PERMISSION_ADD_USER_TO_TEAM *Permission
|
|
var PERMISSION_USE_SLASH_COMMANDS *Permission
|
|
var PERMISSION_MANAGE_SLASH_COMMANDS *Permission
|
|
var PERMISSION_MANAGE_OTHERS_SLASH_COMMANDS *Permission
|
|
var PERMISSION_CREATE_PUBLIC_CHANNEL *Permission
|
|
var PERMISSION_CREATE_PRIVATE_CHANNEL *Permission
|
|
var PERMISSION_MANAGE_PUBLIC_CHANNEL_MEMBERS *Permission
|
|
var PERMISSION_MANAGE_PRIVATE_CHANNEL_MEMBERS *Permission
|
|
var PERMISSION_CONVERT_PUBLIC_CHANNEL_TO_PRIVATE *Permission
|
|
var PERMISSION_CONVERT_PRIVATE_CHANNEL_TO_PUBLIC *Permission
|
|
var PERMISSION_ASSIGN_SYSTEM_ADMIN_ROLE *Permission
|
|
var PERMISSION_MANAGE_ROLES *Permission
|
|
var PERMISSION_MANAGE_TEAM_ROLES *Permission
|
|
var PERMISSION_MANAGE_CHANNEL_ROLES *Permission
|
|
var PERMISSION_CREATE_DIRECT_CHANNEL *Permission
|
|
var PERMISSION_CREATE_GROUP_CHANNEL *Permission
|
|
var PERMISSION_MANAGE_PUBLIC_CHANNEL_PROPERTIES *Permission
|
|
var PERMISSION_MANAGE_PRIVATE_CHANNEL_PROPERTIES *Permission
|
|
var PERMISSION_LIST_PUBLIC_TEAMS *Permission
|
|
var PERMISSION_JOIN_PUBLIC_TEAMS *Permission
|
|
var PERMISSION_LIST_PRIVATE_TEAMS *Permission
|
|
var PERMISSION_JOIN_PRIVATE_TEAMS *Permission
|
|
var PERMISSION_LIST_TEAM_CHANNELS *Permission
|
|
var PERMISSION_JOIN_PUBLIC_CHANNELS *Permission
|
|
var PERMISSION_DELETE_PUBLIC_CHANNEL *Permission
|
|
var PERMISSION_DELETE_PRIVATE_CHANNEL *Permission
|
|
var PERMISSION_EDIT_OTHER_USERS *Permission
|
|
var PERMISSION_READ_CHANNEL *Permission
|
|
var PERMISSION_READ_PUBLIC_CHANNEL_GROUPS *Permission
|
|
var PERMISSION_READ_PRIVATE_CHANNEL_GROUPS *Permission
|
|
var PERMISSION_READ_PUBLIC_CHANNEL *Permission
|
|
var PERMISSION_ADD_REACTION *Permission
|
|
var PERMISSION_REMOVE_REACTION *Permission
|
|
var PERMISSION_REMOVE_OTHERS_REACTIONS *Permission
|
|
var PERMISSION_PERMANENT_DELETE_USER *Permission
|
|
var PERMISSION_UPLOAD_FILE *Permission
|
|
var PERMISSION_GET_PUBLIC_LINK *Permission
|
|
var PERMISSION_MANAGE_WEBHOOKS *Permission
|
|
var PERMISSION_MANAGE_OTHERS_WEBHOOKS *Permission
|
|
var PERMISSION_MANAGE_INCOMING_WEBHOOKS *Permission
|
|
var PERMISSION_MANAGE_OUTGOING_WEBHOOKS *Permission
|
|
var PERMISSION_MANAGE_OTHERS_INCOMING_WEBHOOKS *Permission
|
|
var PERMISSION_MANAGE_OTHERS_OUTGOING_WEBHOOKS *Permission
|
|
var PERMISSION_MANAGE_OAUTH *Permission
|
|
var PERMISSION_MANAGE_SYSTEM_WIDE_OAUTH *Permission
|
|
var PERMISSION_MANAGE_EMOJIS *Permission
|
|
var PERMISSION_MANAGE_OTHERS_EMOJIS *Permission
|
|
var PERMISSION_CREATE_EMOJIS *Permission
|
|
var PERMISSION_DELETE_EMOJIS *Permission
|
|
var PERMISSION_DELETE_OTHERS_EMOJIS *Permission
|
|
var PERMISSION_CREATE_POST *Permission
|
|
var PERMISSION_CREATE_POST_PUBLIC *Permission
|
|
var PERMISSION_CREATE_POST_EPHEMERAL *Permission
|
|
var PERMISSION_EDIT_POST *Permission
|
|
var PERMISSION_EDIT_OTHERS_POSTS *Permission
|
|
var PERMISSION_DELETE_POST *Permission
|
|
var PERMISSION_DELETE_OTHERS_POSTS *Permission
|
|
var PERMISSION_REMOVE_USER_FROM_TEAM *Permission
|
|
var PERMISSION_CREATE_TEAM *Permission
|
|
var PERMISSION_MANAGE_TEAM *Permission
|
|
var PERMISSION_IMPORT_TEAM *Permission
|
|
var PERMISSION_VIEW_TEAM *Permission
|
|
var PERMISSION_LIST_USERS_WITHOUT_TEAM *Permission
|
|
var PERMISSION_READ_JOBS *Permission
|
|
var PERMISSION_MANAGE_JOBS *Permission
|
|
var PERMISSION_CREATE_USER_ACCESS_TOKEN *Permission
|
|
var PERMISSION_READ_USER_ACCESS_TOKEN *Permission
|
|
var PERMISSION_REVOKE_USER_ACCESS_TOKEN *Permission
|
|
var PERMISSION_CREATE_BOT *Permission
|
|
var PERMISSION_ASSIGN_BOT *Permission
|
|
var PERMISSION_READ_BOTS *Permission
|
|
var PERMISSION_READ_OTHERS_BOTS *Permission
|
|
var PERMISSION_MANAGE_BOTS *Permission
|
|
var PERMISSION_MANAGE_OTHERS_BOTS *Permission
|
|
var PERMISSION_VIEW_MEMBERS *Permission
|
|
var PERMISSION_INVITE_GUEST *Permission
|
|
var PERMISSION_PROMOTE_GUEST *Permission
|
|
var PERMISSION_DEMOTE_TO_GUEST *Permission
|
|
var PERMISSION_USE_CHANNEL_MENTIONS *Permission
|
|
var PERMISSION_USE_GROUP_MENTIONS *Permission
|
|
var PERMISSION_READ_OTHER_USERS_TEAMS *Permission
|
|
var PERMISSION_EDIT_BRAND *Permission
|
|
var PERMISSION_MANAGE_SHARED_CHANNELS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_ABOUT *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_ABOUT *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_REPORTING *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_REPORTING *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_USERS *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_USERS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_GROUPS *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_GROUPS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_TEAMS *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_TEAMS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_CHANNELS *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_CHANNELS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_PERMISSIONS *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_PERMISSIONS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_SYSTEM_ROLES *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_SYSTEM_ROLES *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_ENVIRONMENT *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_ENVIRONMENT *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_SITE *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_SITE *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_AUTHENTICATION *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_AUTHENTICATION *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_PLUGINS *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_PLUGINS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_INTEGRATIONS *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_INTEGRATIONS *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_COMPLIANCE *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_COMPLIANCE *Permission
|
|
|
|
var PERMISSION_SYSCONSOLE_READ_EXPERIMENTAL *Permission
|
|
var PERMISSION_SYSCONSOLE_WRITE_EXPERIMENTAL *Permission
|
|
|
|
// General permission that encompasses all system admin functions
|
|
// in the future this could be broken up to allow access to some
|
|
// admin functions but not others
|
|
var PERMISSION_MANAGE_SYSTEM *Permission
|
|
|
|
var AllPermissions []*Permission
|
|
var DeprecatedPermissions []*Permission
|
|
|
|
var ChannelModeratedPermissions []string
|
|
var ChannelModeratedPermissionsMap map[string]string
|
|
|
|
var SysconsoleReadPermissions []*Permission
|
|
var SysconsoleWritePermissions []*Permission
|
|
|
|
func initializePermissions() {
|
|
PERMISSION_INVITE_USER = &Permission{
|
|
"invite_user",
|
|
"authentication.permissions.team_invite_user.name",
|
|
"authentication.permissions.team_invite_user.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_ADD_USER_TO_TEAM = &Permission{
|
|
"add_user_to_team",
|
|
"authentication.permissions.add_user_to_team.name",
|
|
"authentication.permissions.add_user_to_team.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_USE_SLASH_COMMANDS = &Permission{
|
|
"use_slash_commands",
|
|
"authentication.permissions.team_use_slash_commands.name",
|
|
"authentication.permissions.team_use_slash_commands.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_MANAGE_SLASH_COMMANDS = &Permission{
|
|
"manage_slash_commands",
|
|
"authentication.permissions.manage_slash_commands.name",
|
|
"authentication.permissions.manage_slash_commands.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_OTHERS_SLASH_COMMANDS = &Permission{
|
|
"manage_others_slash_commands",
|
|
"authentication.permissions.manage_others_slash_commands.name",
|
|
"authentication.permissions.manage_others_slash_commands.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_CREATE_PUBLIC_CHANNEL = &Permission{
|
|
"create_public_channel",
|
|
"authentication.permissions.create_public_channel.name",
|
|
"authentication.permissions.create_public_channel.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_CREATE_PRIVATE_CHANNEL = &Permission{
|
|
"create_private_channel",
|
|
"authentication.permissions.create_private_channel.name",
|
|
"authentication.permissions.create_private_channel.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_PUBLIC_CHANNEL_MEMBERS = &Permission{
|
|
"manage_public_channel_members",
|
|
"authentication.permissions.manage_public_channel_members.name",
|
|
"authentication.permissions.manage_public_channel_members.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_MANAGE_PRIVATE_CHANNEL_MEMBERS = &Permission{
|
|
"manage_private_channel_members",
|
|
"authentication.permissions.manage_private_channel_members.name",
|
|
"authentication.permissions.manage_private_channel_members.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_CONVERT_PUBLIC_CHANNEL_TO_PRIVATE = &Permission{
|
|
"convert_public_channel_to_private",
|
|
"authentication.permissions.convert_public_channel_to_private.name",
|
|
"authentication.permissions.convert_public_channel_to_private.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_CONVERT_PRIVATE_CHANNEL_TO_PUBLIC = &Permission{
|
|
"convert_private_channel_to_public",
|
|
"authentication.permissions.convert_private_channel_to_public.name",
|
|
"authentication.permissions.convert_private_channel_to_public.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_ASSIGN_SYSTEM_ADMIN_ROLE = &Permission{
|
|
"assign_system_admin_role",
|
|
"authentication.permissions.assign_system_admin_role.name",
|
|
"authentication.permissions.assign_system_admin_role.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_ROLES = &Permission{
|
|
"manage_roles",
|
|
"authentication.permissions.manage_roles.name",
|
|
"authentication.permissions.manage_roles.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_TEAM_ROLES = &Permission{
|
|
"manage_team_roles",
|
|
"authentication.permissions.manage_team_roles.name",
|
|
"authentication.permissions.manage_team_roles.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_CHANNEL_ROLES = &Permission{
|
|
"manage_channel_roles",
|
|
"authentication.permissions.manage_channel_roles.name",
|
|
"authentication.permissions.manage_channel_roles.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_MANAGE_SYSTEM = &Permission{
|
|
"manage_system",
|
|
"authentication.permissions.manage_system.name",
|
|
"authentication.permissions.manage_system.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_CREATE_DIRECT_CHANNEL = &Permission{
|
|
"create_direct_channel",
|
|
"authentication.permissions.create_direct_channel.name",
|
|
"authentication.permissions.create_direct_channel.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_CREATE_GROUP_CHANNEL = &Permission{
|
|
"create_group_channel",
|
|
"authentication.permissions.create_group_channel.name",
|
|
"authentication.permissions.create_group_channel.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_PUBLIC_CHANNEL_PROPERTIES = &Permission{
|
|
"manage_public_channel_properties",
|
|
"authentication.permissions.manage_public_channel_properties.name",
|
|
"authentication.permissions.manage_public_channel_properties.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_MANAGE_PRIVATE_CHANNEL_PROPERTIES = &Permission{
|
|
"manage_private_channel_properties",
|
|
"authentication.permissions.manage_private_channel_properties.name",
|
|
"authentication.permissions.manage_private_channel_properties.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_LIST_PUBLIC_TEAMS = &Permission{
|
|
"list_public_teams",
|
|
"authentication.permissions.list_public_teams.name",
|
|
"authentication.permissions.list_public_teams.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_JOIN_PUBLIC_TEAMS = &Permission{
|
|
"join_public_teams",
|
|
"authentication.permissions.join_public_teams.name",
|
|
"authentication.permissions.join_public_teams.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_LIST_PRIVATE_TEAMS = &Permission{
|
|
"list_private_teams",
|
|
"authentication.permissions.list_private_teams.name",
|
|
"authentication.permissions.list_private_teams.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_JOIN_PRIVATE_TEAMS = &Permission{
|
|
"join_private_teams",
|
|
"authentication.permissions.join_private_teams.name",
|
|
"authentication.permissions.join_private_teams.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_LIST_TEAM_CHANNELS = &Permission{
|
|
"list_team_channels",
|
|
"authentication.permissions.list_team_channels.name",
|
|
"authentication.permissions.list_team_channels.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_JOIN_PUBLIC_CHANNELS = &Permission{
|
|
"join_public_channels",
|
|
"authentication.permissions.join_public_channels.name",
|
|
"authentication.permissions.join_public_channels.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_DELETE_PUBLIC_CHANNEL = &Permission{
|
|
"delete_public_channel",
|
|
"authentication.permissions.delete_public_channel.name",
|
|
"authentication.permissions.delete_public_channel.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_DELETE_PRIVATE_CHANNEL = &Permission{
|
|
"delete_private_channel",
|
|
"authentication.permissions.delete_private_channel.name",
|
|
"authentication.permissions.delete_private_channel.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_EDIT_OTHER_USERS = &Permission{
|
|
"edit_other_users",
|
|
"authentication.permissions.edit_other_users.name",
|
|
"authentication.permissions.edit_other_users.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_READ_CHANNEL = &Permission{
|
|
"read_channel",
|
|
"authentication.permissions.read_channel.name",
|
|
"authentication.permissions.read_channel.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_READ_PUBLIC_CHANNEL_GROUPS = &Permission{
|
|
"read_public_channel_groups",
|
|
"authentication.permissions.read_public_channel_groups.name",
|
|
"authentication.permissions.read_public_channel_groups.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_READ_PRIVATE_CHANNEL_GROUPS = &Permission{
|
|
"read_private_channel_groups",
|
|
"authentication.permissions.read_private_channel_groups.name",
|
|
"authentication.permissions.read_private_channel_groups.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_READ_PUBLIC_CHANNEL = &Permission{
|
|
"read_public_channel",
|
|
"authentication.permissions.read_public_channel.name",
|
|
"authentication.permissions.read_public_channel.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_ADD_REACTION = &Permission{
|
|
"add_reaction",
|
|
"authentication.permissions.add_reaction.name",
|
|
"authentication.permissions.add_reaction.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_REMOVE_REACTION = &Permission{
|
|
"remove_reaction",
|
|
"authentication.permissions.remove_reaction.name",
|
|
"authentication.permissions.remove_reaction.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_REMOVE_OTHERS_REACTIONS = &Permission{
|
|
"remove_others_reactions",
|
|
"authentication.permissions.remove_others_reactions.name",
|
|
"authentication.permissions.remove_others_reactions.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
// DEPRECATED
|
|
PERMISSION_PERMANENT_DELETE_USER = &Permission{
|
|
"permanent_delete_user",
|
|
"authentication.permissions.permanent_delete_user.name",
|
|
"authentication.permissions.permanent_delete_user.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_UPLOAD_FILE = &Permission{
|
|
"upload_file",
|
|
"authentication.permissions.upload_file.name",
|
|
"authentication.permissions.upload_file.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_GET_PUBLIC_LINK = &Permission{
|
|
"get_public_link",
|
|
"authentication.permissions.get_public_link.name",
|
|
"authentication.permissions.get_public_link.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
// DEPRECATED
|
|
PERMISSION_MANAGE_WEBHOOKS = &Permission{
|
|
"manage_webhooks",
|
|
"authentication.permissions.manage_webhooks.name",
|
|
"authentication.permissions.manage_webhooks.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
// DEPRECATED
|
|
PERMISSION_MANAGE_OTHERS_WEBHOOKS = &Permission{
|
|
"manage_others_webhooks",
|
|
"authentication.permissions.manage_others_webhooks.name",
|
|
"authentication.permissions.manage_others_webhooks.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_INCOMING_WEBHOOKS = &Permission{
|
|
"manage_incoming_webhooks",
|
|
"authentication.permissions.manage_incoming_webhooks.name",
|
|
"authentication.permissions.manage_incoming_webhooks.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_OUTGOING_WEBHOOKS = &Permission{
|
|
"manage_outgoing_webhooks",
|
|
"authentication.permissions.manage_outgoing_webhooks.name",
|
|
"authentication.permissions.manage_outgoing_webhooks.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_OTHERS_INCOMING_WEBHOOKS = &Permission{
|
|
"manage_others_incoming_webhooks",
|
|
"authentication.permissions.manage_others_incoming_webhooks.name",
|
|
"authentication.permissions.manage_others_incoming_webhooks.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_OTHERS_OUTGOING_WEBHOOKS = &Permission{
|
|
"manage_others_outgoing_webhooks",
|
|
"authentication.permissions.manage_others_outgoing_webhooks.name",
|
|
"authentication.permissions.manage_others_outgoing_webhooks.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_MANAGE_OAUTH = &Permission{
|
|
"manage_oauth",
|
|
"authentication.permissions.manage_oauth.name",
|
|
"authentication.permissions.manage_oauth.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_SYSTEM_WIDE_OAUTH = &Permission{
|
|
"manage_system_wide_oauth",
|
|
"authentication.permissions.manage_system_wide_oauth.name",
|
|
"authentication.permissions.manage_system_wide_oauth.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
// DEPRECATED
|
|
PERMISSION_MANAGE_EMOJIS = &Permission{
|
|
"manage_emojis",
|
|
"authentication.permissions.manage_emojis.name",
|
|
"authentication.permissions.manage_emojis.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
// DEPRECATED
|
|
PERMISSION_MANAGE_OTHERS_EMOJIS = &Permission{
|
|
"manage_others_emojis",
|
|
"authentication.permissions.manage_others_emojis.name",
|
|
"authentication.permissions.manage_others_emojis.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_CREATE_EMOJIS = &Permission{
|
|
"create_emojis",
|
|
"authentication.permissions.create_emojis.name",
|
|
"authentication.permissions.create_emojis.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_DELETE_EMOJIS = &Permission{
|
|
"delete_emojis",
|
|
"authentication.permissions.delete_emojis.name",
|
|
"authentication.permissions.delete_emojis.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_DELETE_OTHERS_EMOJIS = &Permission{
|
|
"delete_others_emojis",
|
|
"authentication.permissions.delete_others_emojis.name",
|
|
"authentication.permissions.delete_others_emojis.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_CREATE_POST = &Permission{
|
|
"create_post",
|
|
"authentication.permissions.create_post.name",
|
|
"authentication.permissions.create_post.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_CREATE_POST_PUBLIC = &Permission{
|
|
"create_post_public",
|
|
"authentication.permissions.create_post_public.name",
|
|
"authentication.permissions.create_post_public.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_CREATE_POST_EPHEMERAL = &Permission{
|
|
"create_post_ephemeral",
|
|
"authentication.permissions.create_post_ephemeral.name",
|
|
"authentication.permissions.create_post_ephemeral.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_EDIT_POST = &Permission{
|
|
"edit_post",
|
|
"authentication.permissions.edit_post.name",
|
|
"authentication.permissions.edit_post.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_EDIT_OTHERS_POSTS = &Permission{
|
|
"edit_others_posts",
|
|
"authentication.permissions.edit_others_posts.name",
|
|
"authentication.permissions.edit_others_posts.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_DELETE_POST = &Permission{
|
|
"delete_post",
|
|
"authentication.permissions.delete_post.name",
|
|
"authentication.permissions.delete_post.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_DELETE_OTHERS_POSTS = &Permission{
|
|
"delete_others_posts",
|
|
"authentication.permissions.delete_others_posts.name",
|
|
"authentication.permissions.delete_others_posts.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_MANAGE_SHARED_CHANNELS = &Permission{
|
|
"manage_shared_channels",
|
|
"authentication.permissions.manage_shared_channels.name",
|
|
"authentication.permissions.manage_shared_channels.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_REMOVE_USER_FROM_TEAM = &Permission{
|
|
"remove_user_from_team",
|
|
"authentication.permissions.remove_user_from_team.name",
|
|
"authentication.permissions.remove_user_from_team.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_CREATE_TEAM = &Permission{
|
|
"create_team",
|
|
"authentication.permissions.create_team.name",
|
|
"authentication.permissions.create_team.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_TEAM = &Permission{
|
|
"manage_team",
|
|
"authentication.permissions.manage_team.name",
|
|
"authentication.permissions.manage_team.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_IMPORT_TEAM = &Permission{
|
|
"import_team",
|
|
"authentication.permissions.import_team.name",
|
|
"authentication.permissions.import_team.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_VIEW_TEAM = &Permission{
|
|
"view_team",
|
|
"authentication.permissions.view_team.name",
|
|
"authentication.permissions.view_team.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_LIST_USERS_WITHOUT_TEAM = &Permission{
|
|
"list_users_without_team",
|
|
"authentication.permissions.list_users_without_team.name",
|
|
"authentication.permissions.list_users_without_team.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_CREATE_USER_ACCESS_TOKEN = &Permission{
|
|
"create_user_access_token",
|
|
"authentication.permissions.create_user_access_token.name",
|
|
"authentication.permissions.create_user_access_token.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_READ_USER_ACCESS_TOKEN = &Permission{
|
|
"read_user_access_token",
|
|
"authentication.permissions.read_user_access_token.name",
|
|
"authentication.permissions.read_user_access_token.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_REVOKE_USER_ACCESS_TOKEN = &Permission{
|
|
"revoke_user_access_token",
|
|
"authentication.permissions.revoke_user_access_token.name",
|
|
"authentication.permissions.revoke_user_access_token.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_CREATE_BOT = &Permission{
|
|
"create_bot",
|
|
"authentication.permissions.create_bot.name",
|
|
"authentication.permissions.create_bot.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_ASSIGN_BOT = &Permission{
|
|
"assign_bot",
|
|
"authentication.permissions.assign_bot.name",
|
|
"authentication.permissions.assign_bot.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_READ_BOTS = &Permission{
|
|
"read_bots",
|
|
"authentication.permissions.read_bots.name",
|
|
"authentication.permissions.read_bots.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_READ_OTHERS_BOTS = &Permission{
|
|
"read_others_bots",
|
|
"authentication.permissions.read_others_bots.name",
|
|
"authentication.permissions.read_others_bots.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_BOTS = &Permission{
|
|
"manage_bots",
|
|
"authentication.permissions.manage_bots.name",
|
|
"authentication.permissions.manage_bots.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_OTHERS_BOTS = &Permission{
|
|
"manage_others_bots",
|
|
"authentication.permissions.manage_others_bots.name",
|
|
"authentication.permissions.manage_others_bots.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_READ_JOBS = &Permission{
|
|
"read_jobs",
|
|
"authentication.permisssions.read_jobs.name",
|
|
"authentication.permisssions.read_jobs.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_MANAGE_JOBS = &Permission{
|
|
"manage_jobs",
|
|
"authentication.permisssions.manage_jobs.name",
|
|
"authentication.permisssions.manage_jobs.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_VIEW_MEMBERS = &Permission{
|
|
"view_members",
|
|
"authentication.permisssions.view_members.name",
|
|
"authentication.permisssions.view_members.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_INVITE_GUEST = &Permission{
|
|
"invite_guest",
|
|
"authentication.permissions.invite_guest.name",
|
|
"authentication.permissions.invite_guest.description",
|
|
PermissionScopeTeam,
|
|
}
|
|
PERMISSION_PROMOTE_GUEST = &Permission{
|
|
"promote_guest",
|
|
"authentication.permissions.promote_guest.name",
|
|
"authentication.permissions.promote_guest.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_DEMOTE_TO_GUEST = &Permission{
|
|
"demote_to_guest",
|
|
"authentication.permissions.demote_to_guest.name",
|
|
"authentication.permissions.demote_to_guest.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_USE_CHANNEL_MENTIONS = &Permission{
|
|
"use_channel_mentions",
|
|
"authentication.permissions.use_channel_mentions.name",
|
|
"authentication.permissions.use_channel_mentions.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_USE_GROUP_MENTIONS = &Permission{
|
|
"use_group_mentions",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeChannel,
|
|
}
|
|
PERMISSION_READ_OTHER_USERS_TEAMS = &Permission{
|
|
"read_other_users_teams",
|
|
"authentication.permissions.read_other_users_teams.name",
|
|
"authentication.permissions.read_other_users_teams.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_EDIT_BRAND = &Permission{
|
|
"edit_brand",
|
|
"authentication.permissions.edit_brand.name",
|
|
"authentication.permissions.edit_brand.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_ABOUT = &Permission{
|
|
"sysconsole_read_about",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_ABOUT = &Permission{
|
|
"sysconsole_write_about",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_REPORTING = &Permission{
|
|
"sysconsole_read_reporting",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_REPORTING = &Permission{
|
|
"sysconsole_write_reporting",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_USERS = &Permission{
|
|
"sysconsole_read_user_management_users",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_USERS = &Permission{
|
|
"sysconsole_write_user_management_users",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_GROUPS = &Permission{
|
|
"sysconsole_read_user_management_groups",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_GROUPS = &Permission{
|
|
"sysconsole_write_user_management_groups",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_TEAMS = &Permission{
|
|
"sysconsole_read_user_management_teams",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_TEAMS = &Permission{
|
|
"sysconsole_write_user_management_teams",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_CHANNELS = &Permission{
|
|
"sysconsole_read_user_management_channels",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_CHANNELS = &Permission{
|
|
"sysconsole_write_user_management_channels",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_PERMISSIONS = &Permission{
|
|
"sysconsole_read_user_management_permissions",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_PERMISSIONS = &Permission{
|
|
"sysconsole_write_user_management_permissions",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_SYSTEM_ROLES = &Permission{
|
|
"sysconsole_read_user_management_system_roles",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_SYSTEM_ROLES = &Permission{
|
|
"sysconsole_write_user_management_system_roles",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_ENVIRONMENT = &Permission{
|
|
"sysconsole_read_environment",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_ENVIRONMENT = &Permission{
|
|
"sysconsole_write_environment",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_SITE = &Permission{
|
|
"sysconsole_read_site",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_SITE = &Permission{
|
|
"sysconsole_write_site",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_AUTHENTICATION = &Permission{
|
|
"sysconsole_read_authentication",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_AUTHENTICATION = &Permission{
|
|
"sysconsole_write_authentication",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_PLUGINS = &Permission{
|
|
"sysconsole_read_plugins",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_PLUGINS = &Permission{
|
|
"sysconsole_write_plugins",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_INTEGRATIONS = &Permission{
|
|
"sysconsole_read_integrations",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_INTEGRATIONS = &Permission{
|
|
"sysconsole_write_integrations",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_COMPLIANCE = &Permission{
|
|
"sysconsole_read_compliance",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_COMPLIANCE = &Permission{
|
|
"sysconsole_write_compliance",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_PLUGINS = &Permission{
|
|
"sysconsole_read_plugins",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_PLUGINS = &Permission{
|
|
"sysconsole_write_plugins",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_READ_EXPERIMENTAL = &Permission{
|
|
"sysconsole_read_experimental",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
PERMISSION_SYSCONSOLE_WRITE_EXPERIMENTAL = &Permission{
|
|
"sysconsole_write_experimental",
|
|
"authentication.permissions.use_group_mentions.name",
|
|
"authentication.permissions.use_group_mentions.description",
|
|
PermissionScopeSystem,
|
|
}
|
|
|
|
SysconsoleReadPermissions = []*Permission{
|
|
PERMISSION_SYSCONSOLE_READ_ABOUT,
|
|
PERMISSION_SYSCONSOLE_READ_REPORTING,
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_USERS,
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_GROUPS,
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_TEAMS,
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_CHANNELS,
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_PERMISSIONS,
|
|
PERMISSION_SYSCONSOLE_READ_USERMANAGEMENT_SYSTEM_ROLES,
|
|
PERMISSION_SYSCONSOLE_READ_ENVIRONMENT,
|
|
PERMISSION_SYSCONSOLE_READ_SITE,
|
|
PERMISSION_SYSCONSOLE_READ_AUTHENTICATION,
|
|
PERMISSION_SYSCONSOLE_READ_PLUGINS,
|
|
PERMISSION_SYSCONSOLE_READ_INTEGRATIONS,
|
|
PERMISSION_SYSCONSOLE_READ_COMPLIANCE,
|
|
PERMISSION_SYSCONSOLE_READ_EXPERIMENTAL,
|
|
}
|
|
|
|
SysconsoleWritePermissions = []*Permission{
|
|
PERMISSION_SYSCONSOLE_WRITE_ABOUT,
|
|
PERMISSION_SYSCONSOLE_WRITE_REPORTING,
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_USERS,
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_GROUPS,
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_TEAMS,
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_CHANNELS,
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_PERMISSIONS,
|
|
PERMISSION_SYSCONSOLE_WRITE_USERMANAGEMENT_SYSTEM_ROLES,
|
|
PERMISSION_SYSCONSOLE_WRITE_ENVIRONMENT,
|
|
PERMISSION_SYSCONSOLE_WRITE_SITE,
|
|
PERMISSION_SYSCONSOLE_WRITE_AUTHENTICATION,
|
|
PERMISSION_SYSCONSOLE_WRITE_PLUGINS,
|
|
PERMISSION_SYSCONSOLE_WRITE_INTEGRATIONS,
|
|
PERMISSION_SYSCONSOLE_WRITE_COMPLIANCE,
|
|
PERMISSION_SYSCONSOLE_WRITE_EXPERIMENTAL,
|
|
}
|
|
|
|
SystemScopedPermissionsMinusSysconsole := []*Permission{
|
|
PERMISSION_ASSIGN_SYSTEM_ADMIN_ROLE,
|
|
PERMISSION_MANAGE_ROLES,
|
|
PERMISSION_MANAGE_SYSTEM,
|
|
PERMISSION_CREATE_DIRECT_CHANNEL,
|
|
PERMISSION_CREATE_GROUP_CHANNEL,
|
|
PERMISSION_LIST_PUBLIC_TEAMS,
|
|
PERMISSION_JOIN_PUBLIC_TEAMS,
|
|
PERMISSION_LIST_PRIVATE_TEAMS,
|
|
PERMISSION_JOIN_PRIVATE_TEAMS,
|
|
PERMISSION_EDIT_OTHER_USERS,
|
|
PERMISSION_READ_OTHER_USERS_TEAMS,
|
|
PERMISSION_GET_PUBLIC_LINK,
|
|
PERMISSION_MANAGE_OAUTH,
|
|
PERMISSION_MANAGE_SYSTEM_WIDE_OAUTH,
|
|
PERMISSION_CREATE_TEAM,
|
|
PERMISSION_LIST_USERS_WITHOUT_TEAM,
|
|
PERMISSION_CREATE_USER_ACCESS_TOKEN,
|
|
PERMISSION_READ_USER_ACCESS_TOKEN,
|
|
PERMISSION_REVOKE_USER_ACCESS_TOKEN,
|
|
PERMISSION_CREATE_BOT,
|
|
PERMISSION_ASSIGN_BOT,
|
|
PERMISSION_READ_BOTS,
|
|
PERMISSION_READ_OTHERS_BOTS,
|
|
PERMISSION_MANAGE_BOTS,
|
|
PERMISSION_MANAGE_OTHERS_BOTS,
|
|
PERMISSION_READ_JOBS,
|
|
PERMISSION_MANAGE_JOBS,
|
|
PERMISSION_PROMOTE_GUEST,
|
|
PERMISSION_DEMOTE_TO_GUEST,
|
|
PERMISSION_EDIT_BRAND,
|
|
PERMISSION_MANAGE_SHARED_CHANNELS,
|
|
}
|
|
|
|
TeamScopedPermissions := []*Permission{
|
|
PERMISSION_INVITE_USER,
|
|
PERMISSION_ADD_USER_TO_TEAM,
|
|
PERMISSION_MANAGE_SLASH_COMMANDS,
|
|
PERMISSION_MANAGE_OTHERS_SLASH_COMMANDS,
|
|
PERMISSION_CREATE_PUBLIC_CHANNEL,
|
|
PERMISSION_CREATE_PRIVATE_CHANNEL,
|
|
PERMISSION_MANAGE_TEAM_ROLES,
|
|
PERMISSION_LIST_TEAM_CHANNELS,
|
|
PERMISSION_JOIN_PUBLIC_CHANNELS,
|
|
PERMISSION_READ_PUBLIC_CHANNEL,
|
|
PERMISSION_MANAGE_INCOMING_WEBHOOKS,
|
|
PERMISSION_MANAGE_OUTGOING_WEBHOOKS,
|
|
PERMISSION_MANAGE_OTHERS_INCOMING_WEBHOOKS,
|
|
PERMISSION_MANAGE_OTHERS_OUTGOING_WEBHOOKS,
|
|
PERMISSION_CREATE_EMOJIS,
|
|
PERMISSION_DELETE_EMOJIS,
|
|
PERMISSION_DELETE_OTHERS_EMOJIS,
|
|
PERMISSION_REMOVE_USER_FROM_TEAM,
|
|
PERMISSION_MANAGE_TEAM,
|
|
PERMISSION_IMPORT_TEAM,
|
|
PERMISSION_VIEW_TEAM,
|
|
PERMISSION_VIEW_MEMBERS,
|
|
PERMISSION_INVITE_GUEST,
|
|
}
|
|
|
|
ChannelScopedPermissions := []*Permission{
|
|
PERMISSION_USE_SLASH_COMMANDS,
|
|
PERMISSION_MANAGE_PUBLIC_CHANNEL_MEMBERS,
|
|
PERMISSION_MANAGE_PRIVATE_CHANNEL_MEMBERS,
|
|
PERMISSION_MANAGE_CHANNEL_ROLES,
|
|
PERMISSION_MANAGE_PUBLIC_CHANNEL_PROPERTIES,
|
|
PERMISSION_MANAGE_PRIVATE_CHANNEL_PROPERTIES,
|
|
PERMISSION_CONVERT_PUBLIC_CHANNEL_TO_PRIVATE,
|
|
PERMISSION_CONVERT_PRIVATE_CHANNEL_TO_PUBLIC,
|
|
PERMISSION_DELETE_PUBLIC_CHANNEL,
|
|
PERMISSION_DELETE_PRIVATE_CHANNEL,
|
|
PERMISSION_READ_CHANNEL,
|
|
PERMISSION_READ_PUBLIC_CHANNEL_GROUPS,
|
|
PERMISSION_READ_PRIVATE_CHANNEL_GROUPS,
|
|
PERMISSION_ADD_REACTION,
|
|
PERMISSION_REMOVE_REACTION,
|
|
PERMISSION_REMOVE_OTHERS_REACTIONS,
|
|
PERMISSION_UPLOAD_FILE,
|
|
PERMISSION_CREATE_POST,
|
|
PERMISSION_CREATE_POST_PUBLIC,
|
|
PERMISSION_CREATE_POST_EPHEMERAL,
|
|
PERMISSION_EDIT_POST,
|
|
PERMISSION_EDIT_OTHERS_POSTS,
|
|
PERMISSION_DELETE_POST,
|
|
PERMISSION_DELETE_OTHERS_POSTS,
|
|
PERMISSION_USE_CHANNEL_MENTIONS,
|
|
PERMISSION_USE_GROUP_MENTIONS,
|
|
}
|
|
|
|
DeprecatedPermissions = []*Permission{
|
|
PERMISSION_PERMANENT_DELETE_USER,
|
|
PERMISSION_MANAGE_WEBHOOKS,
|
|
PERMISSION_MANAGE_OTHERS_WEBHOOKS,
|
|
PERMISSION_MANAGE_EMOJIS,
|
|
PERMISSION_MANAGE_OTHERS_EMOJIS,
|
|
}
|
|
|
|
AllPermissions = []*Permission{}
|
|
AllPermissions = append(AllPermissions, SystemScopedPermissionsMinusSysconsole...)
|
|
AllPermissions = append(AllPermissions, TeamScopedPermissions...)
|
|
AllPermissions = append(AllPermissions, ChannelScopedPermissions...)
|
|
AllPermissions = append(AllPermissions, SysconsoleReadPermissions...)
|
|
AllPermissions = append(AllPermissions, SysconsoleWritePermissions...)
|
|
|
|
ChannelModeratedPermissions = []string{
|
|
PERMISSION_CREATE_POST.Id,
|
|
"create_reactions",
|
|
"manage_members",
|
|
PERMISSION_USE_CHANNEL_MENTIONS.Id,
|
|
}
|
|
|
|
ChannelModeratedPermissionsMap = map[string]string{
|
|
PERMISSION_CREATE_POST.Id: ChannelModeratedPermissions[0],
|
|
PERMISSION_ADD_REACTION.Id: ChannelModeratedPermissions[1],
|
|
PERMISSION_REMOVE_REACTION.Id: ChannelModeratedPermissions[1],
|
|
PERMISSION_MANAGE_PUBLIC_CHANNEL_MEMBERS.Id: ChannelModeratedPermissions[2],
|
|
PERMISSION_MANAGE_PRIVATE_CHANNEL_MEMBERS.Id: ChannelModeratedPermissions[2],
|
|
PERMISSION_USE_CHANNEL_MENTIONS.Id: ChannelModeratedPermissions[3],
|
|
}
|
|
}
|
|
|
|
func init() {
|
|
initializePermissions()
|
|
}
|