diff --git a/backend/core/admin.py b/backend/core/admin.py
index 9598b953d8bcb6c9cd0045ee101dbe133c295da7..95d5e64a29d2ab5802d1ba104beb0c55f56b0700 100644
--- a/backend/core/admin.py
+++ b/backend/core/admin.py
@@ -16,7 +16,7 @@ class UserCreationForm(forms.ModelForm):
 
     class Meta:
         model = UserAccount
-        fields = ()
+        fields = ('username',)
 
     def clean_password2(self):
         # Check that the two password entries match
@@ -44,7 +44,7 @@ class UserChangeForm(forms.ModelForm):
 
     class Meta:
         model = UserAccount
-        fields = ('password', 'is_active', 'is_admin')
+        fields = ('username', 'password', 'is_active', 'is_admin')
 
     def clean_password(self):
         return self.initial["password"]
@@ -62,14 +62,15 @@ class UserAdmin(BaseUserAdmin):
     list_filter = ('is_admin',)
     fieldsets = (
         (None, {'fields': ('password',)}),
-        ('Permissions', {'fields': ('is_admin',)}),
+        ('Permissions',
+            {'fields': ('username', 'password', 'is_admin', 'is_active')}),
     )
     # add_fieldsets is not a standard ModelAdmin attribute. UserAdmin
     # overrides get_fieldsets to use this attribute when creating a user.
     add_fieldsets = (
         (None, {
             'classes': ('wide',),
-            'fields': ('password1', 'password2')}
+            'fields': ('username', 'password1', 'password2')}
          ),
     )
     filter_horizontal = ()