diff --git a/persistence/migrations/admindb/000029_authsrv_oidc_provider.up.sql b/persistence/migrations/admindb/000029_authsrv_oidc_provider.up.sql index f989b72..1839d26 100644 --- a/persistence/migrations/admindb/000029_authsrv_oidc_provider.up.sql +++ b/persistence/migrations/admindb/000029_authsrv_oidc_provider.up.sql @@ -25,9 +25,9 @@ ALTER TABLE authsrv_oidc_provider OWNER TO admindbuser; ALTER TABLE ONLY authsrv_oidc_provider ADD CONSTRAINT authsrv_oidc_provider_pkey PRIMARY KEY (id); -ALTER TABLE ONLY authsrv_oidc_provider ADD CONSTRAINT authsrv_oidc_provider_id_name_key UNIQUE (id,name); +CREATE UNIQUE index authsrv_oidc_provider_issuer_url ON authsrv_oidc_provider (issuer_url) WHERE trash IS false; -ALTER TABLE ONLY authsrv_oidc_provider ADD CONSTRAINT authsrv_oidc_provider_issuer_url_key UNIQUE (issuer_url); +CREATE UNIQUE index authsrv_oidc_provider_name ON authsrv_oidc_provider (name) WHERE trash IS false; CREATE INDEX authsrv_oidc_provider_organization_id_4219d6ee ON authsrv_oidc_provider USING btree (organization_id); diff --git a/pkg/service/oidc_provider.go b/pkg/service/oidc_provider.go index f4c0ccc..2eae7ea 100644 --- a/pkg/service/oidc_provider.go +++ b/pkg/service/oidc_provider.go @@ -389,7 +389,9 @@ func (s *oidcProvider) Update(ctx context.Context, provider *systemv3.OIDCProvid } _, err = dao.Update(ctx, s.db, existingP.Id, entity) if err != nil { - return &systemv3.OIDCProvider{}, err + _log.Errorf("Unable to create oidc provider: %s", err) + // TODO: catch already existing issuer url and return exact error + return &systemv3.OIDCProvider{}, fmt.Errorf("unable to create oidc provider") } rclaims, _ := structpb.NewStruct(entity.RequestedClaims)