Tout d'abord, vous ne devez pas attribuer directement des autorisations à tempdb. Pour les raisons évidentes qu'il est recréé à chaque redémarrage.
Ce qui soulève en fait une question :pourquoi avez-vous de toute façon besoin d'autorisations directes sur cette base de données ?
Vous n'avez besoin d'aucune autorisation au-delà de la simple possibilité de vous connecter au serveur sql afin de créer des tables temporaires. Cependant, si vous créez de vraies tables dans la tempdb, je vous suggère fortement de modifier cela pour utiliser une base de données dédiée à cet effet.
MISE À JOUR
D'après le commentaire de Martin, tout ce que je peux dire, c'est wow. Je n'aurais même jamais pensé que cela aurait été une option.
Bon, maintenant que j'ai récupéré du choc.
Créez un nouveau travail dans le serveur sql qui s'exécute selon un calendrier. La planification doit être définie sur "Démarrer automatiquement au démarrage de l'Agent SQL Server". Le travail doit recréer vos autorisations tempdb nécessaires.
En un mot, lorsque le serveur est redémarré, l'Agent SQL Server sera redémarré (à condition que le service soit défini de cette façon). Lorsqu'il redémarre, il lancera ce travail qui corrigera ensuite vos autorisations. Je m'attendrais à ce que le site reste inactif pendant seulement quelques secondes de plus qu'il n'en faut pour que le serveur SQL redémarre complètement.