changelog

pull/7053/head
dklimpel 2020-03-08 15:19:07 +01:00
parent 1f5f3ae8b1
commit fb078f921b
4 changed files with 19 additions and 4 deletions

1
changelog.d/7053.feature Normal file
View File

@ -0,0 +1 @@
Add options to disable setting profile info for prevent changes.

View File

@ -1057,6 +1057,14 @@ account_threepid_delegates:
#email: https://example.com # Delegate email sending to example.com #email: https://example.com # Delegate email sending to example.com
#msisdn: http://localhost:8090 # Delegate SMS sending to this local process #msisdn: http://localhost:8090 # Delegate SMS sending to this local process
# If enabled, don't let users set their own display names/avatars
# other than for the very first time (unless they are a server admin).
# Useful when provisioning users based on the contents of a 3rd party
# directory and to avoid ambiguities.
#
#disable_set_displayname: False
#disable_set_avatar_url: False
# Users who register on this homeserver will automatically be joined # Users who register on this homeserver will automatically be joined
# to these rooms # to these rooms
# #

View File

@ -338,8 +338,8 @@ class RegistrationConfig(Config):
# Useful when provisioning users based on the contents of a 3rd party # Useful when provisioning users based on the contents of a 3rd party
# directory and to avoid ambiguities. # directory and to avoid ambiguities.
# #
# disable_set_displayname: False #disable_set_displayname: False
# disable_set_avatar_url: False #disable_set_avatar_url: False
# Users who register on this homeserver will automatically be joined # Users who register on this homeserver will automatically be joined
# to these rooms # to these rooms

View File

@ -160,7 +160,10 @@ class BaseProfileHandler(BaseHandler):
if not by_admin and self.hs.config.disable_set_displayname: if not by_admin and self.hs.config.disable_set_displayname:
profile = yield self.store.get_profileinfo(target_user.localpart) profile = yield self.store.get_profileinfo(target_user.localpart)
if profile.display_name: if profile.display_name:
raise SynapseError(400, "Changing displayname is disabled on this server") raise SynapseError(
400,
"Changing displayname is disabled on this server"
)
if len(new_displayname) > MAX_DISPLAYNAME_LEN: if len(new_displayname) > MAX_DISPLAYNAME_LEN:
raise SynapseError( raise SynapseError(
@ -226,7 +229,10 @@ class BaseProfileHandler(BaseHandler):
if not by_admin and self.hs.config.disable_set_avatar_url: if not by_admin and self.hs.config.disable_set_avatar_url:
profile = yield self.store.get_profileinfo(target_user.localpart) profile = yield self.store.get_profileinfo(target_user.localpart)
if profile.avatar_url: if profile.avatar_url:
raise SynapseError(400, "Changing avatar url is disabled on this server") raise SynapseError(
400,
"Changing avatar url is disabled on this server"
)
if len(new_avatar_url) > MAX_AVATAR_URL_LEN: if len(new_avatar_url) > MAX_AVATAR_URL_LEN:
raise SynapseError( raise SynapseError(