IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

Linked Server avec login


Sujet :

Administration SQL Server

  1. #1
    Membre éclairé Avatar de Baquardie
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2003
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2003
    Messages : 267
    Par défaut Linked Server avec login
    Bonjour,

    Je te tente de faire un linked server entre deux serveurs sql 2008 mais j'obtiens toujours un erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    exec sp_addlinkedserver N'Aramis', N'Sql Server';
     
    EXEC sp_addlinkedsrvlogin 'Aramis', 'false', 'UserTestDest', 'UserTestSource', 'testlinked'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from [aramis]...
    Msg 18456, Level 14, State 1, Line 1
    Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
    Avez vous des pistes de solution ?

    Merci !

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 021
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 021
    Billets dans le blog
    6
    Par défaut
    L'authentification mixte est-elle activée sur le serveur distant et l'avez vous rebooté ?

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre éclairé Avatar de Baquardie
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2003
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2003
    Messages : 267
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    L'authentification mixte est-elle activée sur le serveur distant et l'avez vous rebooté ?

    A +
    Oui l'authentification mixte est activée, et ce depuis l'installation du serveur. Et non je n'ai pas rebooté le serveur distant... pourquoi je ferais cela, c'est un serveur de production, le moins possible on arrête les services le mieux on se porte

    Merci

  4. #4
    Membre Expert

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Par défaut
    Pour la création du mappage du login :
    0. Vérifier que le login_du_user/password_du_user est bien valide.
    1. Utiliser ceci pour voir (remplacer login_du_user/password_du_user par les bonnes valeurs)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    EXEC sp_addlinkedsrvlogin @rmtsrvname ='Aramis', 
    			  @useself = 'false', 
    			  @rmtuser = 'login_du_user', 
    			  @rmtpassword ='password_du_user'
    Etienne ZINZINDOHOUE
    Billets-Articles

  5. #5
    Membre éclairé Avatar de Baquardie
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2003
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2003
    Messages : 267
    Par défaut
    Bonjour,

    Désolé du délai j'étais sur un autre dossier.

    Ok oui cela fonctionne si je spécifie un login et password correct... merci.

    Et comment peux-t-on faire fonctionner le linked server en utilisant l'option "Be made using the login's current security context".

    Lorsque je fais ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    exec sp_addlinkedserver N'Aramis', N'Sql Server';
     
    EXEC sp_addlinkedsrvlogin 'Aramis', 'true'
    Et que je tente une lecture sur aramis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from aramis.usager.dbo.adresse
    Cela me retourne l'erreur

    Msg 18456, Level 14, State 1, Line 1
    Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.

  6. #6
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Et comment peux-t-on faire fonctionner le linked server en utilisant l'option "Be made using the login's current security context".
    Quel type de login est utilisé ? Windows ?

    Si c'est le cas il faudra mettre en place de la délégation Kerberos.

  7. #7
    Membre éclairé Avatar de Baquardie
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2003
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2003
    Messages : 267
    Par défaut
    Citation Envoyé par Ptit_Dje Voir le message
    Quel type de login est utilisé ? Windows ?

    Si c'est le cas il faudra mettre en place de la délégation Kerberos.
    Oui les usagers se connectent uniquement avec des accès Windows (usager AD ou groupe AD).

    Je vais devoir en parler avec l'équipe d'infrastructure parce que je n'y connais rien en Kerberos.

  8. #8
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Tu peux trouver la réponse longue ici.

    La réponse courte c'est:
    - Il faut enregistrer un SPN pour chacune des instances.
    Un SPN est défini, dans le cas de SQL server, pour un service tournant sur un serveur pour un compte bien défini.

    En gros il te faut tourner cette commande avec un compte admin du domaine pour chaque instance impliquée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    setspn -s MSSQLSvc/<servername.fqdn>:<portInstance> domaine\serviceAccount
    J'appele ce SPN un "lecteur de ticket Kerberos", c'est lui qui permet à l'instance de recevoir et de traiter des connections utilisant ce protocole de sécurité.

    - Pour le compte de service tournant l'instance ou tu crées ton linked server, il faut au niveau AD (dsa.msc -> recherche du compte -> tab délégation) autorisé ce compte à déléguer (trust for delégation).
    Il y a alors 2 possibilités:
    l'autoriser à déléguer à tous les services (en gros il peut envoyer des tickets partout) ou restreindre la délégation à un ou plusieurs services définis (plus sécure).
    Dans le cas ou tu choisis le coté sécure, il faut alors enregistrer comme target le SPN défini pour le compte de service de l'instance target.

    Voila, ca devrait t'aider

  9. #9
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Juste quelques rectifications sur certains termes mais la trame est bien celle proposée par Ptit_Dje.

    J'appele ce SPN un "lecteur de ticket Kerberos"
    Le SPN est en réalité un identificateur unique d'un service dans l'annuaire AD. Il permet d''adresser le ticket vers le bon service. Le "lecteur de ticket" est en réalité le KDC dans l'infrastructure Kerberos.

    traiter des connections utilisant ce protocole de sécurité
    Le protocole Kerberos est un protocole d'authentification plus qu'un protocole de sécurité. IPSEC est un protocole de sécurité par exemple.

    ++

  10. #10
    Membre éclairé Avatar de Baquardie
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2003
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2003
    Messages : 267
    Par défaut
    Merci pour les précisions.

    Je suis toujours en attente de mon collègue de l'équipe d'infrastructure concernant kerberos, mais il est très occupé !!

  11. #11
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Juste quelques rectifications sur certains termes mais la trame est bien celle proposée par Ptit_Dje.



    Le SPN est en réalité un identificateur unique d'un service dans l'annuaire AD. Il permet d''adresser le ticket vers le bon service. Le "lecteur de ticket" est en réalité le KDC dans l'infrastructure Kerberos.


    Le protocole Kerberos est un protocole d'authentification plus qu'un protocole de sécurité. IPSEC est un protocole de sécurité par exemple.

    ++
    C'est vrai que je n'étais pas trop précis
    A vrai dire, sans le SPN le service SQL Serveur ne peut pas gérer l'authentification Kerberos -> le lien pour moi en temps que lecteur de ticket d'un point de vue SQL Server.

    Concernant le "trust for delegation" du compte au niveau AD, c'est grave de le comparer à une license de taxi ?
    A tous les services, le compte peut aller à toutes les adresses.
    Constrained, le compte peut aller seulement aux adresses définies dans la liste.

  12. #12
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Citation Envoyé par Ptit_Dje Voir le message
    C'est vrai que je n'étais pas trop précis
    A vrai dire, sans le SPN le service SQL Serveur ne peut pas gérer l'authentification Kerberos -> le lien pour moi en temps que lecteur de ticket d'un point de vue SQL Server.
    En réalité sans le SPN le KDC (centre de distribution des clés) ne pourra pas chiffrer le TGS (ticket de service) utilisé pour l'authentification du client vers le service concerné. Sans le SPN impossible de déterminer le mot de passe à utiliser pour chiffrer le TGS ...

    Citation Envoyé par Ptit_Dje Voir le message
    Concernant le "trust for delegation" du compte au niveau AD, c'est grave de le comparer à une license de taxi ?
    A tous les services, le compte peut aller à toutes les adresses.
    Constrained, le compte peut aller seulement aux adresses définies dans la liste.
    Lol grave non :-) Je préfère personnellement le comparer à un abonnement. Selon l'abonnement que tu as tu peux soit avoir accès à tout soit avoir accès à des services à la carte mais pourquoi pas une licence de taxi ;-)

    ++

Discussions similaires

  1. SQL Server 2008 link server avec SQL Server 2005
    Par Herlece dans le forum Développement
    Réponses: 2
    Dernier message: 25/04/2012, 12h19
  2. linked server avec une bd HSQL
    Par Invité dans le forum Administration
    Réponses: 2
    Dernier message: 09/07/2010, 17h07
  3. Problème Login Linked Server
    Par Baquardie dans le forum Administration
    Réponses: 9
    Dernier message: 12/05/2010, 16h21
  4. Probleme avec un linked server
    Par Ptit_Dje dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 22/08/2007, 13h15
  5. Timeout avec un linked server
    Par Wisefool dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 02/09/2005, 16h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo