Я пытаюсь создать веб-приложение, в котором пользователь может войти в систему, используя свои учетные данные, хранящиеся в моей БД. После входа в систему мне нужно получить токен доступа от стороннего REST API и сохранить его в сеансе. Сторонний REST API использует Oauth2 с предоставлением кода авторизации. Я видел много статей о реализации oauth2 для входа в систему весной, но без доступа к стороннему API после входа в систему.
Стороннее приложение - Docusign.
Ниже приведен мой файл application.properties
spring.security.oauth2.client.registration.docusign.client-name=demo-auth
spring.security.oauth2.client.registration.docusign.client-id=XXXXXXXX
spring.security.oauth2.client.registration.docusign.client-secret=XXXXXXX
spring.security.oauth2.client.registration.docusign.authorization-grant-type=authorization_code
spring.security.oauth2.client.registration.docusign.scope=signature
spring.security.oauth2.client.registration.docusign.redirect-uri=http://localhost:8080/home
spring.security.oauth2.client.registration.docusign.provider=docusign
spring.security.oauth2.client.provider.docusign.token-uri=https://account-d.docusign.com/oauth/token
spring.security.oauth2.client.provider.docusign.authorization-uri=https://account-d.docusign.com/oauth/auth
spring.security.oauth2.client.provider.docusign.user-info-uri=https://account-d.docusign.com/oauth/userinfo
Я не знаю, как получить токен доступа после этого. Я не понимаю, как получить токен доступа после написания этого файла. И я также не знаю, как проверить, успешна ли эта регистрация OAuth или нет. Пожалуйста, кто-нибудь, помогите
пом. xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>sia</groupId>
<artifactId>docusign-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>docusign-demo</name>
<description>Docusign POC</description>
<properties>
<java.version>11</java.version>
</properties>
<dependencies>
<dependency>
<groupId>com.docusign</groupId>
<artifactId>docusign-esign-java</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-oauth2-jose</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>