diff --git a/netbox/templates/users/_user.html b/netbox/templates/users/_user.html
index 9f71b9633..b8cc0471f 100644
--- a/netbox/templates/users/_user.html
+++ b/netbox/templates/users/_user.html
@@ -12,9 +12,11 @@
Profile
-
- Change Password
-
+ {% if not request.user.ldap_username %}
+
+ Change Password
+
+ {% endif %}
API Tokens
diff --git a/netbox/users/views.py b/netbox/users/views.py
index 6abdd817d..c63dd87b4 100644
--- a/netbox/users/views.py
+++ b/netbox/users/views.py
@@ -95,6 +95,10 @@ class ChangePasswordView(LoginRequiredMixin, View):
template_name = 'users/change_password.html'
def get(self, request):
+ # LDAP users cannot change their password here
+ if getattr(request.user, 'ldap_username', None):
+ return redirect('user:profile')
+
form = PasswordChangeForm(user=request.user)
return render(request, self.template_name, {