Bonjour,
Je revient à la charge pour des problème de protection.
est il possible de trouver un numéro qui identifierais de manière unique le serveur sql. Ce numéro ne doit pas etre modifiable.
merci pour vos réponses.
Bonjour,
Je revient à la charge pour des problème de protection.
est il possible de trouver un numéro qui identifierais de manière unique le serveur sql. Ce numéro ne doit pas etre modifiable.
merci pour vos réponses.
Bonjour,
Deux idées :
- Générer toi-même un numéro par serveur (ou par base de données), maintenu dans une table de métadonnées;
- Récupérer la MAC address de la NIC du serveur, par exemple en passant par un provider WMI, ou une fonction/sp en .NET qui récupère la MAC address.
Exemple de code VBScript (trouvé sur les newsgroups), à adapter :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Dim wWMI , wAdapters , wAdapter Set wWMI = GetObject("winmgmts:root\cimv2") Set wAdapters = wWMI.ExecQuery _ ("Select * from Win32_NetworkAdapterConfiguration") For Each wAdapter In wAdapters If wAdapter.macaddress <> "" Then MsgBox wAdapter.Caption & " " & wAdapter.macaddress End If Next
bonjour,
merci pour ces réponses.
La première réponse à mon avis ne peut etre utilisée car en cas de backup le mot pourrait etre copié sur un autre ordinateur.
La deuxième solution est parfaite mais je n'ai jamais utilisé du VB dans SQL.
Comment le fait t on pour créer cette commande?
nb: j'ai visual studio pour le CLR.
merci
Tu as de la chance ! J'ai écrit un article sur le sujet : http://rudi.developpez.com/sqlserver.../sprocsdotnet/
Je te propose d'y jeter un oeil et de me poser toutes les questions sur les points pas clairs.
Oui j'ai vraiment de la chance car c'est ce que je cherchais.
Pourtant j'ai quand meme une petite question. Dans la solution que tu m'as proposé avant il faut avoir des droits autres que SAFE pour pouvoir accéder aux données MAC.
la question qui viens est comment faire pour changer le mode de sécurité SAFEMerci-- Enregistrement l'assemblage
CREATE ASSEMBLY GetSessions FROM 'c:\temp\Programmez.dll'
WITH PERMISSION_SET=SAFE
GO
-- Enregistrer la procédure
CREATE PROCEDURE GetSessions @user varchar(255) AS EXTERNAL NAME [Programmez].[
StoredProcedures].[
GetSessions]
WITH PERMISSION_SET = { SAFE | EXTERNAL_ACCESS | UNSAFE }
Probablement EXTERNAL_ACCESS devrait suffire ?
Partager