Mim

Select * from Seb where Sujets in (SQL Server 2008, ADO.NET, Visual Studio 2008)

septembre 2008 - Messages

Sync Services for ADO.Net on Devices is alive

La version Sync Services for Device vient de passer hier en RTM.

Pour télécharger cette version, rendez vous ici : Sync Services for ADO.NET on Devices

Attention, à ne pas confondre cette librairie, exlusivement déstinée aux devices équipés de Windows mobile 5 , 6+ et Sync Services for ADO.NET desktops, que vous avez intégré dans Visual Studio 2008.

Par contre, biensur ces deux librairies sont compatibles entre elles, et les scénarios de connection et synchronisation entre un device, un desktop et un serveur sont tout à fait possible, et conseillé !

D'ailleurs, vous avez un petit sample dans le SDK fourni avec Sync Services for ADO.NET on Devices qui vous permettra de vous faire une bonne idée de ce qui est possible de faire !

 

Bonne synchro ;)

Donnez des droits de lecture sur des procedures stockees

Dans la série tutorial du jour, voici une question récente d'un client :

"Comment ne donner de droits qu'aux procédures stockées de ma base ?"

C'est parti :

1) D'abord créer un Login Sql Server (à ne pas confondre avec l'utilisateur base de données !)

image

On crée un login pour permettre une connexion au serveur. Ce qui permet "juste que de" se connecter, et rien d'autre

image

2) Une fois le login créé, on crée, sur la base de donneés (Demo chez moi)  l'utilisateur associé à :

  • ce login
  • cette base de données

image

Ce qui veut dire que lorsque monsieur X se connecte avec le login défini avant et qu'il tente une action sur la base de données, il aura les droits de cet utilisateur.

image

Notez (et c'est assez fréquent) que dans mon exemple, le login et le nom d'utilisateur sont les même, mais ceci n'est absolument pas obligatoire.

Bien, nous avons créé notre utilisateur. Il n'a tjs aucun droits particulier, si ce n'est le néant absolu, proche de l'ère glaciaire.

3) Nous allons donc lui donner les droits d'éxécution sur une procédure stockée : sGetAllClients. (Notez que j'ai d'autres procédures stockées, auxquelles je ne donne pas de droits particulier)

image

Direction onglet Permissions, et nous recherchons notre utilisateur

image

Sur lequel nous lui affectons les droits d'éxécution

image

 

Et voilà, c'est fini.

Un petit test : Je me connecte avec mon fameux login :

image

Je déroule le noeud proc stock de ma base, at oh miracle, seule la procédure stockée que j'ai le droits d'éxécuter apparait (notez le cadenas qui indique que je n'ai pas le droit de la modifier)

image

et exécution

image

 

Et voilà, fini !