2010-07-21 8 views
6

Ho letto da qualche parte che ApplicationID è un ID univoco per un sito Web (percorso del sito IIS). Ma sono ancora confuso.ASP.NET ApplicationId

  • Quando e perché ho bisogno di questo?
  • Sto cercando di implementare l'appartenenza di asp.net per un sito Web e creerò alcune tabelle SQL aggiuntive (come aziende, servizi, ecc.) Diverse dalle tabelle di appartenenza di asp.net. Così; devo aggiungere una colonna ApplicationID a queste tabelle personalizzate? Perché?

risposta

3

L'ID applicazione è memorizzato in una tabella aspnet_Applications nel database di appartenenza. Quando si abilita per la prima volta il provider ASP Memebership, il nome dell'applicazione impostato su web.config viene inserito in questa tabella. Da quel momento in poi, il provider di appartenenza utilizza il nome dell'applicazione per determinare quali utenti possono accedere per l'autenticazione dell'utente nella tua app.

Per rispondere alla seconda domanda, no, a meno che non si abbia una necessità/esigenza unica di farlo. Motivo: l'appartenenza a asp.net è configurata in modo da poter ospitare più applicazioni possibilmente distinte utilizzando un solo database di appartenenza. Questo è bello in quanto non è necessario creare un database diverso per ciascuno dei propri siti per l'autenticazione. A meno che tu non abbia applicazioni multiple/distinte che colpiscono queste altre tabelle che hai menzionato, non devi preoccuparti di assegnare l'appID a loro come gli utenti sono già loggati.

+0

Grazie per la risposta, ma ho ancora alcuni domande. Quando dici "puoi ospitare più applicazioni possibilmente distinte utilizzando un database di appartenenza" intendi qualcosa del genere. www.stackoverflow.com e www.superuser.com potrebbero utilizzare lo stesso database di appartenenza? Grazie. –

+0

assolutamente. Poiché l'AppID può essere impostato come univoco per ciascuna applicazione, è possibile avere un APPID [email protected] - SitoA e un APPID [email protected] - SitoB senza un nome utente già preso errore. – Tommy

+0

se è necessario condividere le informazioni di accesso tra i due siti, è possibile a) rendere gli APPID uguali o b) personalizzare il provider di appartenenza per poter copiare le informazioni dagli utenti all'interno di un APPID a un altro, anche se proverò questo approccio come potrebbe aprire dei buchi di sicurezza. – Tommy

Problemi correlati