Je viens de migrer de SQL2000 vers SQL2008 et j'ai commencé à obtenir un problème d'autorisation d'exécution sur un proc stocké qui utilise sp_OACreate.Autorisation d'exécution du serveur SQL; échec d'application des autorisations
Le reste du système fonctionne correctement avec le login db qui a été configuré et ajouté à la base de données.
J'ai essayé:
USE master
GO
GRANT EXEC ON sp_OACreate TO [dbuser]
GO
Mais cela échoue avec l'erreur suivante:
Msg 15151, Level 16, State 1, Line 1 Cannot find the user 'dbuser', because it does not exist or you do not have permission.
Je suis ouvert une session sur le serveur comme sa avec les autorisations. Je peux exécuter une instruction sql similaire et appliquer les autorisations à un rôle de serveur, mais pas à un identifiant/utilisateur. Comment appliquer les modifications à l'utilisateur/login spécifique?
Je peux appliquer les permissions au rôle public et cela résout mon problème; Cependant, cela semble être un problème de sécurité pour moi que je ne veux pas vraiment appliquer au serveur live.
Comment avez-vous migré vos bases de données? Si vous n'avez pas restauré la base de données master, l'utilisateur "dbuser" n'aurait pas été présent et donc pas mappé. –
@John - Vous avez raison. La restauration de la base de données Master n'a pas été effectuée en raison de certains bits et bobs historiques que nous voulions éviter dans la migration. Malheureusement, nous avons également perdu les utilisateurs qui sont maintenant recréés et mappés aux connexions :-) – WestDiscGolf