diff --git a/biscuit/core/migrations/0010_user_one_to_one.py b/biscuit/core/migrations/0010_user_one_to_one.py
new file mode 100644
index 0000000000000000000000000000000000000000..438fa5bfb647a71f015d3581956df35436af3bd2
--- /dev/null
+++ b/biscuit/core/migrations/0010_user_one_to_one.py
@@ -0,0 +1,20 @@
+# Generated by Django 2.2.3 on 2019-07-30 20:48
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('core', '0009_person_user'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='person',
+            name='user',
+            field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='person', to=settings.AUTH_USER_MODEL),
+        ),
+    ]
diff --git a/biscuit/core/models.py b/biscuit/core/models.py
index d2a85ba7ebb5128789d1f3b604cb4f4dc6fa5802..e4e06d21e173f47c61245c99fe04ec202f7e267f 100644
--- a/biscuit/core/models.py
+++ b/biscuit/core/models.py
@@ -22,7 +22,7 @@ class Person(SchoolRelated):
         ('m', _('male'))
     ]
 
-    user = models.ForeignKey(
+    user = models.OneToOneField(
         get_user_model(), on_delete=models.SET_NULL, blank=True, null=True,
         related_name='person')
     is_active = models.BooleanField(