2 votes

Spring Boot - Connexion à une base de données SQL Server à l'aide de l'authentification Windows

J'écris une application Spring Boot pour me connecter à une base de données SQL Server et extraire des données dans un fichier de données. .csv fichier.

Le DBA a créé un utilisateur db et a donné un accès en lecture aux tables spécifiques dont mon application a besoin. Cet utilisateur de base de données est mappé à un compte d'utilisateur de service LDAP. J'essaie maintenant d'accéder à cette base de données en utilisant le compte de service. J'utilise IntelliJIdea pour créer cette application. Lorsque j'essaie d'exécuter l'application, c'est mon utilisateur Windows qui se connecte à la base de données et non le compte de service.

Comment/où puis-je donner au compte de service le nom d'utilisateur et le mot de passe pour se connecter à la base de données en évitant que mon utilisateur de connexion soit utilisé pour l'authentification ?

Mon Env. de développement

  • Windows 7

  • Java 8

  • IntelliJIdea Ultimate 2019.3

  • DBeaver Universal DB Client 7.0.4

Les étapes que j'ai suivies,

1) Téléchargé mssql-jdbc-8.2.2

2) Ajout de la dll et du jar auth dans le Java/JDK/bin

3) Ajout de la dll auth dans Windows/system32

4) dans le fichier application.properties

spring:
 datasourse:
  url: jdbc:sqlserver://<host-name>:<port-number>;databaseName=<db-name>;integrationSecurity=true;

NOTE : Je peux me connecter avec succès à la base de données en utilisant le compte de service lorsque j'ai exécuté le DBeaver DB Client par "Shift + clic droit" et sélectionné "Run as different user" et mis les détails du compte de service.

0voto

Máté Farkas Points 144

Je recommande de garder ouvert un cmd.exe (Windows Command Line) lancé avec "Run as different user" et avec ce compte de service, vous pouvez alors tester votre application dans cette fenêtre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X