SharePoint 2010 BCS Ignore nom d'utilisateur / mot de passe dans la chaîne de connexion

StackOverflow https://stackoverflow.com/questions/2670764

  •  28-09-2019
  •  | 
  •  

Question

Voici mon scénario.

J'ai SharePoint 2010 en cours d'exécution sur un serveur, avec un exécutant SQL Server sur un autre. Les deux machines sont sur le même domaine, mais les connexions concernées sont locales à chaque machine. SharePoint est en cours d'exécution en tant qu'autorité NT \ Service réseau, si cela fait une différence.

J'ai créé un BCS qui extrait des données de la supprimer SQL Server. La chaîne de connexion apparaît comme suit: Data Source={0}; Initial Catalog={1};User Id={2}; Password={3}; Integrated Security=SSPI. J'ai confirmé que la chaîne de connexion est bien formée, une fois que tous les x {} 's sont remplacés.

Cela fonctionne très bien, à condition que vous accédez au site SharePoint à partir d'un navigateur en cours d'exécution sur la même machine (la machine hébergeant SharePoint, qui est de dire). Une fois que vous vous connectez à partir d'un navigateur sur une autre machine, il échoue.

Botter un profileur sur SQL Server révèle que lorsque SharePoint est accessible « localement », l'utilisateur effectuant des requêtes est le Identifié compte. Lorsque son fonctionnement à distance, l'utilisateur est « anonyme ». En raison des autorisations de compte, l'ancien succède alors celle-ci échoue. En aucun cas, l'utilisateur est en fait celui fourni dans la chaîne de connexion.

Cette réponse indique que le problème est probablement lié à la mise en commun de connexion, mais ne m'a pas aidé à résoudre le problème.

Alors, en quelques mots, comment puis-je obtenir ce BCS pour honorer réellement la paire nom d'utilisateur chaîne de connexion / mot de passe? Ou, à défaut, comment puis-je obtenir la fin équivalente? La configuration du serveur (SharePoint sur un, SQL Server sur un autre) n'est pas négociable; malheureusement.

Était-ce utile?

La solution

Vous pouvez avoir intégré de la sécurité XOR vous pouvez avoir l'authentification SQL. Mais vous ne pouvez pas les mélanger. Une fois que vous avez spécifié Integrated Security=SSPI, votre nom d'utilisateur et mot de passe sont ignorés, comme la sécurité intégrée sera utilisé à la place. Si vous souhaitez spécifier un utilisateur d'authentification SQL et mot de passe, retirez la partie « sécurité intégrée ».

Comme toute connexion d'authentification intégrée, des serveurs distants tombent dans la restriction de la délégation contrainte et ils authentifient anonymes. Pour activer les informations d'identification NT personnifié à l'écoulement au saut suivant (SQL Server), la délégation contrainte doit être activé, voir:

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top