Utilizzo di ObjectSid di Active Directory come chiave primaria in SQL Server per l'accesso ai dati tramite ASP.NET MVC

3

Sto progettando un'app Web di riconoscimento dei dipendenti Intranet utilizzando ASP.NET MVC C # / MS SQL Server. Questo sarà accessibile solo dalla rete.

I dipendenti e i dirigenti saranno in grado di dare una ricompensa agli altri dipendenti per un lavoro ben fatto o per giorni specifici per i dipendenti. Circa 1000 dipendenti in totale.

Mi piacerebbe non richiedere un utente separato / pw, quindi sto usando l'autenticazione di Windows.

Per lavorare con / memorizzare i dati sulle transazioni premio, ho bisogno di avere un db SQL separato.

Il mio piano è quello di importare tutti i dipendenti da Active Directory a SQL Server e utilizzare ObjectSid come chiave primaria per il Dipendente sul lato SQL. Sono a conoscenza del fatto che questo ObjectSid non cambierà a meno che il dipendente non si trasferisca in un nuovo dominio (che è altamente improbabile a questo punto). Sembrerà qualcosa di simile -

Employee: 
ObjectSID - PK
username - from Windows AD
firstName
lastName
etc. 

Traccio le transazioni di ricompensa, i saldi dei dipendenti, ecc. in altre tabelle.

Quando accedono all'app, sono in grado di utilizzare il loro nome utente Windows nella mia vista tramite

@HttpContext.Current.User.Identity.Name. 

Posso quindi usare quel nome utente per abbinarlo a Employee.username, restituire l'ObjectSID (il PK) e procedere a utilizzarlo come ID univoco per memorizzare le loro attività nell'app.

Ci sono grossi problemi che ti saltano addosso con quel piano?

In definitiva, avrò una minore manutenzione dei dati da fare quando un dipendente ha un cambio di nome (matrimonio), ma questo è abbastanza raro che non lo considero un grosso problema.

Sono graditi pensieri o idee su come affrontarlo in modo diverso.

Grazie.

    
posta FreeMars 25.10.2018 - 20:22
fonte

1 risposta

0

Sembra che la tua domanda abbia ricevuto risposta in precedenza qui: link

Detto questo, non sono d'accordo con il consiglio in quel thread: le società si fondono, sia che si tratti di un trappola o di un'acquisizione.

Raccomando di archiviare le informazioni sulla foresta e il SID, in quanto ciò garantirà univocità assumendo che la foresta sia correttamente adotta: link

    
risposta data 09.01.2019 - 00:39
fonte

Leggi altre domande sui tag