2008-08-07 6 views
13

Je souhaite une sécurité supplémentaire pour un point particulier de mon application Web. Je veux donc verrouiller la base de données (SQL Server 2005). Des suggestions ou est-ce encore nécessaire avec SQL Server?Verrouillage d'une base de données SQL Server avec PHP

Modifier sur la question:

La requête échoue silencieusement sans messages d'erreurs enregistrées, et ne se produit pas à l'intérieur d'une transaction.

Solution finale:

Je n'a jamais été en mesure de résoudre le problème, mais ce que je blesse faire était de passer à MySQL et à l'aide d'une requête de niveau transactionnel ici. Ce n'était pas la raison principale ou même la principale raison de changer. J'avais eu des problèmes avec SQL Server et cela m'a permis d'avoir notre CMS et divers autres outils fonctionnant tous sur la même base de données. Auparavant, nous avions une base de données SQL Server et MySQL en cours d'exécution pour exécuter notre site. Le port prenait un peu de temps, mais à long terme, je pense que cela fonctionnera beaucoup mieux pour le site et l'entreprise.

+0

> n'a pas été inséré lorsque deux personnes essayaient d'insérer à la fois. Quel est le message d'erreur que vous recevez en cas d'échec? – KyleLanser

+0

Aucun message d'erreur. –

Répondre

7

Je suppose que vous avez trois options.

  1. Définissez les autorisations utilisateur afin que l'utilisateur x puisse uniquement lire dans la base de données.

  2. Définir la base de données en mode utilisateur unique de sorte qu'une seule connexion peut accéder

    sp_dboption 'myDataBaseName', simple, vrai

  3. Définir la base de données en lecture seule

    sp_dboption 'myDataBaseName', lecture seule, vrai

2

Je n'ai jamais été capable de résoudre le problème, mais ce que j'ai fini par faire était passer à MySQL et utiliser une requête de niveau transactionnel ici. Ce n'était pas la raison principale ou même la principale raison de changer. J'avais eu des problèmes avec MSSQL et cela m'a permis d'avoir notre CMS et divers autres outils fonctionnant tous sur la même base de données. Auparavant, nous avions une base de données MSSQL et MySQL pour exécuter notre site. Le port prenait un peu de temps, mais à long terme, je pense que cela fonctionnera beaucoup mieux pour le site et l'entreprise.

Questions connexes