Poblemi di configurazione IIS 7 su win 7 ultimate ASP.NET e sql 2008 ...

mercoledì 13 gennaio 2010 - 14.36

martinez Profilo | Senior Member

Buongiorno a tutti!

Spero sia la sezione giusta e spero di non annoiarvi con questo credo lunghissimo post!

Sviluppo siti web in asp.net 2.0 e superiori utilizzando vs 2008 sql express 2008 e ajax ..

per consentire la possibilità ai committenti di visualizzare in tempo reale gli "avanzamenti lavori" dei siti web commissionati mi era venuta la seguente idea:

- attivare IIS 7
- esporre le applicazioni su IIS per renderle visibili dall'esterno (internet)

procedura:

attivo IIS 7 sul mio win 7 ultimate
vado su siti web e clicco aggiungi ed inserisco un nome ed il percorso fisico del filesystem dove sto sviluppando la mia applicazione
decido di dedicare a questo progetto la porta XXXX
apro la porta nel firewall di win 7 (TCP)
vado sul mio router e configuro un account dyndns avendo un IP dinamico e apro un virtual server (NAT) che punto all'indirizzo IP della mia macchina locale ed alla porta di cui sopra (TCP)

da un pc non connesso alla mia lan vado su internet digito l'indirizzo ottenuto da dynDNS:XXXX e ... WOW! il sito è lì in bella mostra che bello ... nessuna spesa e cliente contento ...

purtroppo come sempre non è tutto facile ...

vado in app_data e faccio l'attach di un file mdf versione sql2008
creo una tabella la riempio di dati
collego la tabella ad un repeater nella default.aspx
lancio il debug e tutto funziona a meraviglia
aggiorno la mia pagina dal pc collegato al dynDNS e sorpresa delle sorprese non funziona più nulla (e te pareva )

l'errore è il seguente:
Impossibile generare un istanza utente di SQL Servere a causa di un problema nel recupero del percorso dei dati delle applicazioni locali dell'utente. Verificare che nel computer dell'utente sia disponibile un profilo utente locale.

Faccio presente che App_data ha i permessi di lettura scrittura in IIS

qualcuno sa cosa manca alla mia configurazione??? per farla funzionare???

forse devo concedere l'utilizzo di alcune porte sul firewall e sul router per SQL ??? oppure mancano dei permessi ???

non riesco a capire quale possa essere il problema.

Grazie a tutti almeno per aver letto fn qui!

Antonio

R3GM4ST3R Profilo | Junior Member

Ho letto velocissimamente, hai aggiunto l'utente IUSR al database?
Visto che l'utente che viene utilizzato da IIS per eseguire script è generalmente IUSR, lo devi aggiungere nella sezione protezione / account di accesso all'interno dell'SQL, e chiaramente devi aggiungere tale utente, oltre che all'SQL anche al database che utilizzi dalla tua applicazione WEB.
E' solo un problema di account di accesso...

Ciao
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)

martinez Profilo | Senior Member

Ciao,
grazie per la risposta ...

ma mentre scrivo riesco anche a viusalizzare nuovamente le mie pagine sul web ...

Ho risolto il problema semplicemente eliminando la voce "user istance=true" dalla mia stringa di connessione ... ho scoperto anche che questa voce è obsoleta in sql2008 ???

non sono un grande esperto ... ma mi piace capire e non riesco a comprendere perchè NON funzioni con la user istance ...

microsoft dice:
L'obiettivo primario del modello basato sulle istanze utente è quello di isolare gli utenti non amministratori di SQL Server, consentendo così ai singoli utenti di collegare i database desiderati senza il rischio di compromettere le attività di un altro utente. Tale isolamento viene ottenuto generando un'istanza separata di SQL Server per ogni utente.

Un altro obiettivo di SQL Server Express è quello di semplificare l'utilizzo del prodotto per gli utenti non amministratori. Molti utenti di Windows dispongono di account con privilegi amministrativi. Sfortunatamente, quando si utilizza un account Administrator risulta più semplice assumere il controllo del computer tramite malware. Se il programma malware è eseguito da utenti non amministratori, tuttavia, non potrà apportare modifiche estese all'intero sistema e potrà quindi causare solo danni limitati.

...

il mio problema è risolto i permessi erano e sono giustamente impostati ... ma vorrei capire perchè se uso la user istance non funziona e se la elimino va ... odio fare le cose senza saperne il perchè

Antonio

R3GM4ST3R Profilo | Junior Member

Ciao!
Ottimo, mi sembra il giusto atteggiamento per imparare...
Prova a dare un occhio quì
http://msdn.microsoft.com/en-us/library/ms143684.aspx
e quì
http://msdn.microsoft.com/en-us/library/cc281994.aspx

Sinceramente non ho mai adoperato questa modalità, però dalla lettura rapida di 30 secondi non sembra una roba brutta, anzi, dovrò approfondire l'argomento...
Da quei 30 secondi mi pare di aver capito che quella modalità di connessione crea una nuova istanza con bassi privilegi che "parla" con quella principale attraverso le named pipe, quindi prova ad attivare tale modalità dalla "SQLSERVER CONFIGURATION MANAGER".

(prova a chiedere al Benaglia, lui sicuramente saprà darti maggiori informazioni...)

Ciao

Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)

martinez Profilo | Senior Member

Grazie ancora per l'interesse ...

si sto approfondendo la cosa ... ed non appena ne verrò a capo pubblichero qui la risposta!

intanto ancora grazie per il tuo tempo!

Saluti
Antonio

R3GM4ST3R Profilo | Junior Member

Di nulla...Hai fatto tutto tu!

Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5