Accesso remoto su sqlserver

domenica 20 marzo 2011 - 11.25

dupperelko Profilo | Junior Member

Ciao a tutti.
Questa è la prima volta che vorrei connettere un db sqlserver (messo su un virtual server remoto) da una applicazione aspx.

Ho configurato sqlserver per accessi remoti, configurato la porta (1433), configurato firewall sul virtual server,
tutto quello che serve per la connessione.

Ora ho inserito nella mia connectionstring:
Dim strCn As String = "Data Source=xx.xxx.xxx.xx,1433;Network Library=DBMSSOCN;Initial Catalog=primo_db;User ID=carlo;Password=carlo;"
tutti i parametri per connettermi ma mi restituisce sempre:
Login failed for user 'carlo'.

Premetto che se mi loggo su management studio con 'carlo', mi fa entrare.

Se poi inserisco nella connectionstring user 'sa' e pass 'sa', l'applicativo web funziona. Ma io non vorrei utilizzare questo account.

Quindi c'è qualcosa che 'sa' ha e che 'carlo' non ha. Ho guardato nelle proprietà ma niente.

Ho mappato il db 'primo_db' sul mapping di 'carlo' ma non funziona.
Ho assegnato a 'carlo' i ruoli db_datawriter e db_datareader, ma niente...

Qualcuno mi sa consigliare dove sbaglio?
Grazie

Saluti

lbenaglia Profilo | Guru

>Ora ho inserito nella mia connectionstring:
>Dim strCn As String = "Data Source=xx.xxx.xxx.xx,1433;Network
>Library=DBMSSOCN;Initial Catalog=primo_db;User ID=carlo;Password=carlo;"
>tutti i parametri per connettermi ma mi restituisce sempre:
>Login failed for user 'carlo'.
>
>Premetto che se mi loggo su management studio con 'carlo', mi
>fa entrare.
>
>Se poi inserisco nella connectionstring user 'sa' e pass 'sa',
>l'applicativo web funziona. Ma io non vorrei utilizzare questo
>account.
>
>Quindi c'è qualcosa che 'sa' ha e che 'carlo' non ha. Ho guardato
>nelle proprietà ma niente.
>
>Ho mappato il db 'primo_db' sul mapping di 'carlo' ma non funziona.
>Ho assegnato a 'carlo' i ruoli db_datawriter e db_datareader,
>ma niente...
>
>Qualcuno mi sa consigliare dove sbaglio?

Ciao,

Detto così non dovrebbero sussistere problemi.
Quando dici "Premetto che se mi loggo su management studio con 'carlo', mi fa entrare" ti fa "entrare" dove?
Qual è il db di default per la login Carlo?
Esiste un mapping tra login e user account?
Che azioni puoi fare quando ti sei autenticato da SSMS?

>Grazie
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

dupperelko Profilo | Junior Member

>>Ora ho inserito nella mia connectionstring:
>>Dim strCn As String = "Data Source=xx.xxx.xxx.xx,1433;Network
>>Library=DBMSSOCN;Initial Catalog=primo_db;User ID=carlo;Password=carlo;"
>>tutti i parametri per connettermi ma mi restituisce sempre:
>>Login failed for user 'carlo'.
>>
>>Premetto che se mi loggo su management studio con 'carlo', mi
>>fa entrare.
>>
>>Se poi inserisco nella connectionstring user 'sa' e pass 'sa',
>>l'applicativo web funziona. Ma io non vorrei utilizzare questo
>>account.
>>
>>Quindi c'è qualcosa che 'sa' ha e che 'carlo' non ha. Ho guardato
>>nelle proprietà ma niente.
>>
>>Ho mappato il db 'primo_db' sul mapping di 'carlo' ma non funziona.
>>Ho assegnato a 'carlo' i ruoli db_datawriter e db_datareader,
>>ma niente...
>>
>>Qualcuno mi sa consigliare dove sbaglio?
>
>Ciao,
Ciao Lorenzo, piacere di sentirti...
>
>Detto così non dovrebbero sussistere problemi.
>Quando dici "Premetto che se mi loggo su management studio con
>'carlo', mi fa entrare" ti fa "entrare" dove?
quando lancio ssms mi chiede "connect to server"
seleziono authentication 'sql server authentication'
e inserisco us 'carlo' pwd 'carlo'... ed accedo

>Qual è il db di default per la login Carlo?
primo_db
>Esiste un mapping tra login e user account?
questo non ho capito cos'è.. l'unico mapping che ho fatto
(dove c'è 'general' 'server roles' 'user mapping'...)
user mapping con primo_db..
>Che azioni puoi fare quando ti sei autenticato da SSMS?
aprire db, aggiungere modificare campi, ma non add tabelle, mi dice non abilitato
>
>>Grazie
>Prego.
>
>Ciao!
>--
>Lorenzo Benaglia
>Microsoft MVP - SQL Server
>http://blogs.dotnethell.it/lorenzo/

lbenaglia Profilo | Guru

>quando lancio ssms mi chiede "connect to server"
>seleziono authentication 'sql server authentication'
>e inserisco us 'carlo' pwd 'carlo'... ed accedo
Quindi significa che esiste la login Carlo con password "carlo" e quindi di autentichi all'istanza.
Occorre però capire se questa login è correttamente mappata allo user account (carlo?!) definito nel database primo_db.
Lancia SSMS, autenticati all'istanza con "sa", seleziona Security > Logins > Carlo, tasto DX, Properties, User Mapping e verifica nell'elenco di destra che la login sia mappata al corrispondente user account a livello di dabatase (la colonna User in corrispondenza del database primo_db deve essere valorizzata).

>>Che azioni puoi fare quando ti sei autenticato da SSMS?
>aprire db, aggiungere modificare campi, ma non add tabelle, mi
>dice non abilitato
Se con "aggiungere modificare campi" ti riferisci ad aggiungere righe e aggiornare colonne questo è congruente con i permessi che hai associato allo user account.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

dupperelko Profilo | Junior Member

>>quando lancio ssms mi chiede "connect to server"
>>seleziono authentication 'sql server authentication'
>>e inserisco us 'carlo' pwd 'carlo'... ed accedo
>Quindi significa che esiste la login Carlo con password "carlo"
>e quindi di autentichi all'istanza.
>Occorre però capire se questa login è correttamente mappata allo
>user account (carlo?!) definito nel database primo_db.
>Lancia SSMS, autenticati all'istanza con "sa", seleziona Security
>> Logins > Carlo, tasto DX, Properties, User Mapping e
>verifica nell'elenco di destra che la login sia mappata al corrispondente
>user account a livello di dabatase (la colonna User in corrispondenza
>del database primo_db deve essere valorizzata).
>
se puo' esserti utile (riguardo a carlo):
in server roles non ho flaggato niente.
in user mapping ho, con map flaggato:
database: primo_db
user: carlo
defaulschema: dbo

in securables: tutto vuoto
in status: grant ed enabled


grazie


>>>Che azioni puoi fare quando ti sei autenticato da SSMS?
>>aprire db, aggiungere modificare campi, ma non add tabelle, mi
>>dice non abilitato
>Se con "aggiungere modificare campi" ti riferisci ad aggiungere
>righe e aggiornare colonne questo è congruente con i permessi
>che hai associato allo user account.
>
>Ciao!
>--
>Lorenzo Benaglia
>Microsoft MVP - SQL Server
>http://blogs.dotnethell.it/lorenzo/

lbenaglia Profilo | Guru

>se puo' esserti utile (riguardo a carlo):
>in server roles non ho flaggato niente.
>in user mapping ho, con map flaggato:
>database: primo_db
>user: carlo
>defaulschema: dbo
>
>in securables: tutto vuoto
>in status: grant ed enabled

Se Login e User Account sono correttamente mappati allora non dovrebbero sussistere problemi, mentre a quanto pare ne hai ma in base a quello che hai postato non sono in grado di identificarli.

>grazie
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

dupperelko Profilo | Junior Member

>>se puo' esserti utile (riguardo a carlo):
>>in server roles non ho flaggato niente.
>>in user mapping ho, con map flaggato:
>>database: primo_db
>>user: carlo
>>defaulschema: dbo
>>
>>in securables: tutto vuoto
>>in status: grant ed enabled
>
>Se Login e User Account sono correttamente mappati allora non
>dovrebbero sussistere problemi, mentre a quanto pare ne hai ma
>in base a quello che hai postato non sono in grado di identificarli.
ho provato ad eliminare l'utente e crearne uno nuovo.. stesso errore..

eppure, se metto 'sa' nella connection string, funziona... strano.

Domanda
nella pagina di user mapping (relativa a carlo2, nuovo utente):
ho mappato carlo2 con primo_db.
Sotto ci sono i role membership per primo_db
e qui ho flaggato solo db_datareader, db_datawriter e public.. è corretto? o manca q.sa?
In realtà non conosco bene cosa bisogni flaggare e cosa no..
grazie

>
>>grazie
>Prego.
>
>Ciao!
>--
>Lorenzo Benaglia
>Microsoft MVP - SQL Server
>http://blogs.dotnethell.it/lorenzo/

lbenaglia Profilo | Guru

>>>se puo' esserti utile (riguardo a carlo):
>>>in server roles non ho flaggato niente.
>>>in user mapping ho, con map flaggato:
>>>database: primo_db
>>>user: carlo
>>>defaulschema: dbo
>>>
>>>in securables: tutto vuoto
>>>in status: grant ed enabled
>>
>>Se Login e User Account sono correttamente mappati allora non
>>dovrebbero sussistere problemi, mentre a quanto pare ne hai ma
>>in base a quello che hai postato non sono in grado di identificarli.
>ho provato ad eliminare l'utente e crearne uno nuovo.. stesso
>errore..
>
>eppure, se metto 'sa' nella connection string, funziona... strano.
Decisamente.
L'errore che riporti è relativo alla fase di autenticazione, quindi temo che ci sia qualcosa di errato nella definizione della login, ma per esserne certo dovrei dare un'occhiata.

>nella pagina di user mapping (relativa a carlo2, nuovo utente):
>ho mappato carlo2 con primo_db.
>Sotto ci sono i role membership per primo_db
>e qui ho flaggato solo db_datareader, db_datawriter e public..
>è corretto? o manca q.sa?
>In realtà non conosco bene cosa bisogni flaggare e cosa no..
Ti suggerisco di studiare bene i concetti di autenticazione ed autorizzazione che trovi ampiamente descritti sui Books Online invece che procedere a tentativi.

>grazie
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

dupperelko Profilo | Junior Member

>>>>se puo' esserti utile (riguardo a carlo):
>>>>in server roles non ho flaggato niente.
>>>>in user mapping ho, con map flaggato:
>>>>database: primo_db
>>>>user: carlo
>>>>defaulschema: dbo
>>>>
>>>>in securables: tutto vuoto
>>>>in status: grant ed enabled
>>>
>>>Se Login e User Account sono correttamente mappati allora non
>>>dovrebbero sussistere problemi, mentre a quanto pare ne hai ma
>>>in base a quello che hai postato non sono in grado di identificarli.
>>ho provato ad eliminare l'utente e crearne uno nuovo.. stesso
>>errore..
>>
>>eppure, se metto 'sa' nella connection string, funziona... strano.
>Decisamente.
>L'errore che riporti è relativo alla fase di autenticazione,
>quindi temo che ci sia qualcosa di errato nella definizione della
>login, ma per esserne certo dovrei dare un'occhiata.
>
>>nella pagina di user mapping (relativa a carlo2, nuovo utente):
>>ho mappato carlo2 con primo_db.
>>Sotto ci sono i role membership per primo_db
>>e qui ho flaggato solo db_datareader, db_datawriter e public..
>>è corretto? o manca q.sa?
>>In realtà non conosco bene cosa bisogni flaggare e cosa no..
>Ti suggerisco di studiare bene i concetti di autenticazione ed
>autorizzazione che trovi ampiamente descritti sui Books Online
>invece che procedere a tentativi.
si infatti... appena avrò risolto ti farò poi presente dove era il problema..

grazie per adesso...
ciao

>
>>grazie
>Prego.
>
>Ciao!
>--
>Lorenzo Benaglia
>Microsoft MVP - SQL Server
>http://blogs.dotnethell.it/lorenzo/

dupperelko Profilo | Junior Member

Problema risolto.

il servizio di virtual server veniva offerto con opzione PLESK. quindi finché non si settavano alcuni parametri
attraverso l'interfaccia plesk non si siusciva a effettuare login...

In pratica c'era doppia istanza (plesk e sql) e io connettevo quella sbagliata (tranne sa che poteva fare tutto).

Saluti e grazie


ciao
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