diff --git a/packages/rocketchat-i18n/i18n/de.i18n.json b/packages/rocketchat-i18n/i18n/de.i18n.json
index 1d5195f8380d..3c33450cfca8 100644
--- a/packages/rocketchat-i18n/i18n/de.i18n.json
+++ b/packages/rocketchat-i18n/i18n/de.i18n.json
@@ -29,6 +29,7 @@
"Accounts_AllowEmailChange": "Ändern der E-Mail-Adresse erlauben",
"Accounts_AllowPasswordChange": "Ändern des Passworts erlauben",
"Accounts_AllowUserAvatarChange": "Benutzern das Ändern des Profilbilds erlauben",
+ "Accounts_AllowRealNameChange": "Ändern des Namens erlauben",
"Accounts_AllowUsernameChange": "Ändern des Benutzernamens erlauben",
"Accounts_AllowUserProfileChange": "Benutzern das Ändern des Profils erlauben",
"Accounts_AvatarResize": "Größe des Profilbilds anpassen",
@@ -1424,6 +1425,7 @@
"Read_only_changed_successfully": "Erfolgreich schreibgeschützt",
"Read_only_channel": "Kanal schreibgeschützt",
"Read_only_group": "Schreibgeschützte Gruppe",
+ "RealName_Change_Disabled": "Der Administrator hat das Ändern von Namen deaktiviert",
"Record": "Aufnehmen",
"Redirect_URI": "Weiterleitungs-URL",
"Refresh_keys": "Schlüssel aktualisieren",
diff --git a/packages/rocketchat-i18n/i18n/en.i18n.json b/packages/rocketchat-i18n/i18n/en.i18n.json
index 9613ce95afcc..cb3df18b57e4 100644
--- a/packages/rocketchat-i18n/i18n/en.i18n.json
+++ b/packages/rocketchat-i18n/i18n/en.i18n.json
@@ -29,6 +29,7 @@
"Accounts_AllowEmailChange": "Allow Email Change",
"Accounts_AllowPasswordChange": "Allow Password Change",
"Accounts_AllowUserAvatarChange": "Allow User Avatar Change",
+ "Accounts_AllowRealNameChange": "Allow Name Change",
"Accounts_AllowUsernameChange": "Allow Username Change",
"Accounts_AllowUserProfileChange": "Allow User Profile Change",
"Accounts_AvatarResize": "Resize Avatars",
@@ -1456,6 +1457,7 @@
"Read_only_changed_successfully": "Read only changed successfully",
"Read_only_channel": "Read Only Channel",
"Read_only_group": "Read Only Group",
+ "RealName_Change_Disabled": "Your Rocket.Chat administrator has disabled the changing of names",
"Record": "Record",
"Redirect_URI": "Redirect URI",
"Refresh_keys": "Refresh keys",
diff --git a/packages/rocketchat-lib/server/methods/setRealName.js b/packages/rocketchat-lib/server/methods/setRealName.js
index ee0ba56bf635..4bfd7e9d6e86 100644
--- a/packages/rocketchat-lib/server/methods/setRealName.js
+++ b/packages/rocketchat-lib/server/methods/setRealName.js
@@ -7,6 +7,10 @@ Meteor.methods({
throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'setRealName' });
}
+ if (!RocketChat.settings.get('Accounts_AllowRealNameChange')) {
+ throw new Meteor.Error('error-not-allowed', 'Not allowed', { method: 'setRealName' });
+ }
+
if (!RocketChat.setRealName(Meteor.userId(), name)) {
throw new Meteor.Error('error-could-not-change-name', 'Could not change name', { method: 'setRealName' });
}
diff --git a/packages/rocketchat-lib/server/startup/settings.js b/packages/rocketchat-lib/server/startup/settings.js
index 77d94e4a5b1f..31188a8c9760 100644
--- a/packages/rocketchat-lib/server/startup/settings.js
+++ b/packages/rocketchat-lib/server/startup/settings.js
@@ -36,6 +36,10 @@ RocketChat.settings.addGroup('Accounts', function() {
type: 'boolean',
'public': true
});
+ this.add('Accounts_AllowRealNameChange', true, {
+ type: 'boolean',
+ 'public': true
+ });
this.add('Accounts_AllowUsernameChange', true, {
type: 'boolean',
'public': true
diff --git a/packages/rocketchat-ui-account/client/accountProfile.html b/packages/rocketchat-ui-account/client/accountProfile.html
index 798f88857377..83854cec4fd6 100644
--- a/packages/rocketchat-ui-account/client/accountProfile.html
+++ b/packages/rocketchat-ui-account/client/accountProfile.html
@@ -60,14 +60,19 @@
{{_ "Profile"}}
+ {{# with canChange=allowRealNameChange}}
+ {{/with}}
{{# with canChange=allowUsernameChange}}