From 1dfae374ec29311c6dded9661dae4b15d0096b01 Mon Sep 17 00:00:00 2001
From: Tanner Prestegard <tanner.prestegard@ligo.org>
Date: Mon, 3 Jun 2019 12:31:27 -0500
Subject: [PATCH] Make X509 certificate subject unique

---
 .../0040_x509cert_unique_subject.py           | 20 +++++++++++++++++++
 gracedb/ligoauth/models.py                    |  2 +-
 2 files changed, 21 insertions(+), 1 deletion(-)
 create mode 100644 gracedb/ligoauth/migrations/0040_x509cert_unique_subject.py

diff --git a/gracedb/ligoauth/migrations/0040_x509cert_unique_subject.py b/gracedb/ligoauth/migrations/0040_x509cert_unique_subject.py
new file mode 100644
index 000000000..ff0e7762d
--- /dev/null
+++ b/gracedb/ligoauth/migrations/0040_x509cert_unique_subject.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.20 on 2019-06-03 17:24
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('ligoauth', '0039_delete_alternateemail_model'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='x509cert',
+            name='subject',
+            field=models.CharField(max_length=255, unique=True),
+        ),
+    ]
diff --git a/gracedb/ligoauth/models.py b/gracedb/ligoauth/models.py
index 42968ab38..1a5685448 100644
--- a/gracedb/ligoauth/models.py
+++ b/gracedb/ligoauth/models.py
@@ -25,7 +25,7 @@ class RobotUser(User):
 
 class X509Cert(models.Model):
     """Model for storing X.509 certificate subjects for API access"""
-    subject = models.CharField(max_length=300)
+    subject = models.CharField(max_length=255, unique=True, null=False)
     users = models.ManyToManyField(User)
 
 
-- 
GitLab