J'utilise LinqToSQL et une connexion de confiance pour gérer les sélections de bases de données/mises à jour/insertions/suppressions. Dans le passé, j'ai toujours utilisé des procédures stockées et accordé uniquement l'autorisation d'exécution à l'identité du pool d'applications pour le sproc particulier dans la base de données. C'est mon premier projet LinqToSql (et j'adore ce que ça aide). Je préférerais ne pas accorder l'accès dbo à l'identité du pool d'applications pour que LinqToSql fonctionne (mais si cela est recommandé, cela ne me dérange pas). Quel type d'autorisations puis-je accorder à l'identité du pool d'applications afin que LinqToSql dispose des autorisations minimales? Ou devrais-je simplement aller avec les permissions dbo et en finir avec ça?Quelles autorisations doivent être accordées à l'utilisateur SQL Server pour LinqToSql?
Comme par KristoferA's answer ce sont les autorisations que j'Accordée l'identité du pool d'applications dans la base de données:
EXEC sp_addrolemember 'db_datareader', 'app_pool_identity'
EXEC sp_addrolemember 'db_datawriter', 'app_pool_identity'
Pas exactement le même niveau de sécurité que l'octroi ne les droits d'exécution aux sprocs nécessaires, mais je suis très bon avec cela étant donné les énormes gains de développement que j'ai réalisés en utilisant Linq2SQL. Et c'est mieux que d'accorder l'accès complet à dbo.