Se la stringa di connessione può essere generata dalla chiave di licenza, suppongo che ogni cliente avrà la sua chiave di licenza, risultante in una distinta stringa di connessione per cliente ... quindi in pratica stai dando a ogni cliente un < em> account sul database SQLServer e la sua chiave di licenza è la "password" per questo account. Potrebbe non essere una buona idea, a seconda dei dettagli della tua app Web.
Come commento generico, ciò significa che stai mescolando autenticazione con autorizzazione , che non è una buona idea. La chiave di licenza è authentication : viene utilizzata dal client per dimostrare la propria identità al server. Autorizzazione riguarda la decisione su cosa consentire a un determinato cliente debitamente autenticato. Nella terminologia di Active Directory, la differenza tra autenticazione e autorizzazione è la differenza tra la verifica della password di un utente e la creazione del membro dell'account utente del gruppo "Domain Admins". Autenticazione e autorizzazione sono cose distinte che sono meglio tenere da parte. Nella proposta di licenza-chiave-per-connessione-stringa, si sta utilizzando il codice di licenza per entrambi, che può essere restrittivo.
(Questa distinzione è spesso resa dolorosamente acuta quando si tratta di PKI : tutte le persone che iniziano con PKI provano a qualche punto per gestire diritti di accesso con certificati , e poi inizia la sofferenza.)