Vous pouvez annoter votre méthode avec quelque chose comme
@ApiOperation(authorizations = {
@Authorization(value = "my_oauth", scopes = {
@AuthorizationScope(scope = "write")
})
})
Ou régler avec regexp dans un dossier de springfox avec un SecurityContext (adapter le regexp pour couvrir plusieurs points de terminaison si vous voulez)
private SecurityContext securityContext() {
return SecurityContext.builder()
.securityReferences(writeAuth())
.forPaths(PathSelectors.regex("/myEndpoint"))
.build();
}
List<SecurityReference> writeAuth() {
AuthorizationScope authorizationScope
= new AuthorizationScope("write", "");
AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
authorizationScopes[0] = authorizationScope;
return newArrayList(
new SecurityReference("my_oauth", authorizationScopes));
}
Vous devrez également probablement définir les définitions de sécurité en configurant le dossier SecuritySchemes
private OAuth oauth() {
AuthorizationScope authorizationScope
= new AuthorizationScope("write", "can write");
return new OAuth("my_oauth", newArrayList(authorizationScope), newArrayList(new ResourceOwnerPasswordCredentialsGrant("/oauth/token")));
}
Je pense que le dossier par défaut est maintenant configuré dans le jhipster lib de sorte que vous ne serez pas en mesure de personnaliser facilement et vous aurez probablement créer un nouveau grain de dossier pour ajouter vos SecuritySchemes et SecurityContext
@Bean
public Docket myApi() {
return new Docket(DocumentationType.SWAGGER_2)
.groupName("alt")
.select()
...
.securitySchemes(newArrayList(oauth()))
.securityContexts(newArrayList(securityContext()))
;
}
votre nouvelle spécification sera disponible à http://localhost:8080/v2/api-docs?group=alt
Pour plus d'informations à ce sujet, voir le springfox doc: http://springfox.github.io/springfox/docs/current/#getting-started-spring-boot
pouvez-vous partager votre config fanfaronnades s'il vous plaît? –