Guía del desarrollador de Spring Boot Starter para Microsoft Entra
Este artículo se aplica a: ✔️ Versión 4.19.0 ✔️ versión 5.18.0
En este artículo se describen las características y las principales aplicaciones prácticas de Spring Boot Starter para Microsoft Entra ID. En este artículo también se incluyen instrucciones sobre problemas comunes, soluciones alternativas y pasos de diagnóstico.
Al crear una aplicación web, la administración de las identidades y el acceso son elementos fundamentales. Azure ofrece un servicio de identidad basado en la nube que tiene una integración profunda con el resto del ecosistema de Azure.
Aunque Spring Security facilita la protección de las aplicaciones basadas en Spring, no está adaptado a un proveedor de identidades específico. El Spring Boot Starter para Microsoft Entra ID permite conectar la aplicación web a un inquilino de Microsoft Entra y proteger el servidor de recursos con Microsoft Entra ID. Usa el protocolo Oauth 2.0 para proteger las aplicaciones web y los servidores de recursos.
Los vínculos siguientes proporcionan acceso al paquete de inicio, la documentación y los ejemplos:
Requisitos previos
Antes de seguir las instrucciones de esta guía, debe disponer de los requisitos previos siguientes:
- Una suscripción de Azure. Si todavía no la tiene, puede activar sus ventajas como suscriptor de MSDN o registrarse para obtener una cuenta de Azure gratuita.
- Un kit de desarrollo de Java (JDK) compatible (versión 8 o superior). Para más información, consulte Compatibilidad con Java en Azure y Azure Stack.
- Apache Maven, versión 3.0 o posterior.
- Una aplicación registrada con Microsoft Entra ID. Para más información, consulte Inicio rápido: Registrar una aplicación en la plataforma de identidad de Microsoft.
Importante
Se necesita Spring Boot versión 2.5 o superior para completar los pasos descritos en este artículo.
Escenarios principales
En esta guía se describe cómo usar el iniciador de Microsoft Entra en los casos siguientes:
- Acceso a una aplicación web
- Acceso a servidores de recursos desde una aplicación web
- Protección de un servidor de recursos o una API
- Acceso a otros servidores de recursos desde un servidor de recursos
- Aplicación web y servidor de recursos en una aplicación
Una aplicación web es cualquier aplicación basada en web que permite a un usuario iniciar sesión. Un servidor de recursos aceptará o denegará el acceso después de validar un token de acceso.
Acceso a una aplicación web
En este escenario se usa el flujo de concesión de código de autorización de OAuth 2.0 para permitir que un usuario inicie sesión con una cuenta Microsoft.
Para usar el iniciador de Microsoft Entra en esta situación, siga estos pasos:
Defina el URI de redirección en <application-base-uri>/login/oauth2/code/. Por ejemplo: http://localhost:8080/login/oauth2/code/
. Asegúrese de incluir la barra diagonal /
final. Para más información sobre el identificador URI de redirección, consulte Incorporación de un URI de redirección en Inicio rápido: Registro de una aplicación en la plataforma de identidad de Microsoft.
Agregue las siguientes dependencias al archivo pom.xml.
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-active-directory</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
Nota:
Para obtener más información sobre cómo administrar las versiones de la biblioteca de Spring Cloud Azure mediante una lista de materiales (BOM), consulte la sección Introducción de la guía para desarrolladores de Spring Cloud Azure.
Agregue las siguientes propiedades al archivo application.yml. Puede obtener los valores de estas propiedades en el registro de la aplicación que creó en Azure Portal, como se describe en los requisitos previos.
spring:
cloud:
azure:
active-directory:
enabled: true
profile:
tenant-id: <tenant>
credential:
client-id: <your-client-ID>
client-secret: <your-client-secret>
Nota:
Los valores permitidos para tenant-id
son: common
, organizations
, consumers
o el identificador de inquilino. Para obtener más información sobre estos valores, consulte la sección Uso del punto de conexión incorrecto (cuentas personales y de organización) de Error AADSTS50020: la cuenta de usuario del proveedor de identidades no existe en el inquilino. Para obtener información sobre la conversión de la aplicación de un solo inquilino, consulte Conversión de una aplicación de inquilino único en varios inquilinos en Microsoft Entra ID.
Use la configuración de seguridad predeterminada o proporcione su propia configuración.
Opción 1: Use la configuración predeterminada.
Con esta opción no hay que hacer nada. La clase DefaultAadWebSecurityConfigurerAdapter
se configura automáticamente.
Opción 2: Aplicar una configuración autodefinida.
Para proporcionar una configuración, extienda la clase AadWebSecurityConfigurerAdapter
y llame a super.configure(http)
en la función configure(HttpSecurity http)
, como se muestra en el ejemplo siguiente:
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class AadOAuth2LoginSecurityConfig extends AadWebSecurityConfigurerAdapter {
/**
* Add configuration logic as needed.
*/
@Override
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
http.authorizeRequests()
.anyRequest().authenticated();
// Do some custom configuration.
}
}
Acceso a servidores de recursos desde una aplicación web
Para usar el iniciador de Microsoft Entra en esta situación, siga estos pasos:
Establezca el identificador URI de redirección como se describió anteriormente.
Agregue las siguientes dependencias al archivo pom.xml.
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-active-directory</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
Nota:
Para obtener más información sobre cómo administrar las versiones de la biblioteca de Spring Cloud Azure mediante una lista de materiales (BOM), consulte la sección Introducción de la guía para desarrolladores de Spring Cloud Azure.
Agregue las siguientes propiedades al archivo application.yml, como se ha descrito anteriormente:
spring:
cloud:
azure:
active-directory:
enabled: true
profile:
tenant-id: <tenant>
credential:
client-id: <your-client-ID>
client-secret: <your-client-secret>
authorization-clients:
graph:
scopes: https://graph.microsoft.com/Analytics.Read, email
Nota:
Los valores permitidos para tenant-id
son: common
, organizations
, consumers
o el identificador de inquilino. Para obtener más información sobre estos valores, consulte la sección Uso del punto de conexión incorrecto (cuentas personales y de organización) de Error AADSTS50020: la cuenta de usuario del proveedor de identidades no existe en el inquilino. Para obtener información sobre la conversión de la aplicación de un solo inquilino, consulte Conversión de una aplicación de inquilino único en varios inquilinos en Microsoft Entra ID.
Aquí, graph
es el nombre del elemento OAuth2AuthorizedClient
y scopes
son los ámbitos necesarios para el consentimiento al iniciar sesión.
Agregue a la aplicación código similar al del ejemplo siguiente:
@GetMapping("/graph")
@ResponseBody
public String graph(
@RegisteredOAuth2AuthorizedClient("graph") OAuth2AuthorizedClient graphClient
) {
// toJsonString() is just a demo.
// oAuth2AuthorizedClient contains access_token. We can use this access_token to access the resource server.
return toJsonString(graphClient);
}
Aquí, graph
es el identificador de cliente configurado en el paso anterior. OAuth2AuthorizedClient
contiene el token de acceso, que se usa para acceder al servidor de recursos.
Para ver un ejemplo completo de este caso, consulte spring-cloud-azure-starter-active-directory sample: aad-web-application.
Protección de un servidor de recursos o una API
Este escenario no admite el inicio de sesión, pero protege el servidor mediante la validación del token de acceso. Si el token de acceso es válido, el servidor atiende la solicitud.
Para usar el iniciador de Microsoft Entra en esta situación, siga estos pasos:
Agregue las siguientes dependencias al archivo pom.xml.
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-active-directory</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-resource-server</artifactId>
</dependency>
Nota:
Para obtener más información sobre cómo administrar las versiones de la biblioteca de Spring Cloud Azure mediante una lista de materiales (BOM), consulte la sección Introducción de la guía para desarrolladores de Spring Cloud Azure.
Agregue las siguientes propiedades al archivo application.yml, como se ha descrito anteriormente:
spring:
cloud:
azure:
active-directory:
enabled: true
credential:
client-id: <your-client-ID>
app-id-uri: <your-app-ID-URI>
Puede usar los valores <your-client-ID> y <your-app-ID-URI> para comprobar el token de acceso. Puede obtener el valor <your-app-ID-URI> en Azure Portal, tal como se muestra en las siguientes imágenes:
Use la configuración de seguridad predeterminada o proporcione su propia configuración.
Opción 1: Use la configuración predeterminada.
Con esta opción no tiene que hacer nada. La clase DefaultAadResourceServerWebSecurityConfigurerAdapter
se configura automáticamente.
Opción 2: Aplicar una configuración autodefinida.
Para proporcionar una configuración, extienda la clase AadResourceServerWebSecurityConfigurerAdapter
y llame a super.configure(http)
en la función configure(HttpSecurity http)
, como se muestra en el ejemplo siguiente:
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class AadOAuth2ResourceServerSecurityConfig extends AadResourceServerWebSecurityConfigurerAdapter {
/**
* Add configuration logic as needed.
*/
@Override
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
http.authorizeRequests((requests) -> requests.anyRequest().authenticated());
}
}
Para ver un ejemplo completo de este caso, consulte spring-cloud-azure-starter-active-directory sample: aad-resource-server.
Acceso a otros servidores de recursos desde un servidor de recursos
Este escenario posibilita un servidor de recursos que visita otros servidores de recursos.
Para usar el iniciador de Microsoft Entra en esta situación, siga estos pasos:
Agregue las siguientes dependencias al archivo pom.xml.
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-active-directory</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-resource-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
Nota:
Para obtener más información sobre cómo administrar las versiones de la biblioteca de Spring Cloud Azure mediante una lista de materiales (BOM), consulte la sección Introducción de la guía para desarrolladores de Spring Cloud Azure.
Agregue las siguientes propiedades al archivo application.yml:
spring:
cloud:
azure:
active-directory:
enabled: true
profile:
tenant-id: <tenant>
credential:
client-id: <web-API-A-client-ID>
client-secret: <web-API-A-client-secret>
app-id-uri: <web-API-A-app-ID-URI>
authorization-clients:
graph:
scopes:
- https://graph.microsoft.com/User.Read
Nota:
Los valores permitidos para tenant-id
son: common
, organizations
, consumers
o el identificador de inquilino. Para obtener más información sobre estos valores, consulte la sección Uso del punto de conexión incorrecto (cuentas personales y de organización) de Error AADSTS50020: la cuenta de usuario del proveedor de identidades no existe en el inquilino. Para obtener información sobre la conversión de la aplicación de un solo inquilino, consulte Conversión de una aplicación de inquilino único en varios inquilinos en Microsoft Entra ID.
Use el atributo @RegisteredOAuth2AuthorizedClient
en el código para acceder al servidor de recursos relacionado, como se muestra en el ejemplo siguiente:
@PreAuthorize("hasAuthority('SCOPE_Obo.Graph.Read')")
@GetMapping("call-graph")
public String callGraph(@RegisteredOAuth2AuthorizedClient("graph") OAuth2AuthorizedClient graph) {
return callMicrosoftGraphMeEndpoint(graph);
}
Para ver un ejemplo completo de este caso, consulte spring-cloud-azure-starter-active-directory sample: aad-resource-obo.
Aplicación web y servidor de recursos en una aplicación
Este escenario admite acceso a una aplicación web y protección de un servidor de recursos o una API en una aplicación.
Para usar aad-starter
en este caso, realice estos pasos:
Agregue las siguientes dependencias al archivo pom.xml.
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-active-directory</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-resource-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
Nota:
Para obtener más información sobre cómo administrar las versiones de la biblioteca de Spring Cloud Azure mediante una lista de materiales (BOM), consulte la sección Introducción de la guía para desarrolladores de Spring Cloud Azure.
Actualice el archivo application.yml. Establezca la propiedad spring.cloud.azure.active-directory.application-type
en web_application_and_resource_server
y especifique el tipo de autorización de cada cliente de autorización, como se muestra en el ejemplo siguiente.
spring:
cloud:
azure:
active-directory:
enabled: true
profile:
tenant-id: <tenant>
credential:
client-id: <Web-API-C-client-id>
client-secret: <Web-API-C-client-secret>
app-id-uri: <Web-API-C-app-id-url>
application-type: web_application_and_resource_server # This is required.
authorization-clients:
graph:
authorizationGrantType: authorization_code # This is required.
scopes:
- https://graph.microsoft.com/User.Read
- https://graph.microsoft.com/Directory.Read.All
Nota:
Los valores permitidos para tenant-id
son: common
, organizations
, consumers
o el identificador de inquilino. Para obtener más información sobre estos valores, consulte la sección Uso del punto de conexión incorrecto (cuentas personales y de organización) de Error AADSTS50020: la cuenta de usuario del proveedor de identidades no existe en el inquilino. Para obtener información sobre la conversión de la aplicación de un solo inquilino, consulte Conversión de una aplicación de inquilino único en varios inquilinos en Microsoft Entra ID.
Escriba código Java para configurar varias instancias de HttpSecurity
.
En el código de ejemplo siguiente, AadWebApplicationAndResourceServerConfig
contiene dos configuraciones de seguridad, una para un servidor de recursos y otra para una aplicación web. La clase ApiWebSecurityConfigurationAdapter
tiene una prioridad alta para configurar el adaptador de seguridad del servidor de recursos. La clase HtmlWebSecurityConfigurerAdapter
tiene una prioridad baja para configurar el adaptador de seguridad de la aplicación web.
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class AadWebApplicationAndResourceServerConfig {
@Order(1)
@Configuration
public static class ApiWebSecurityConfigurationAdapter extends AadResourceServerWebSecurityConfigurerAdapter {
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
// All the paths that match `/api/**`(configurable) work as the esource server. Other paths work as the web application.
http.antMatcher("/api/**")
.authorizeRequests().anyRequest().authenticated();
}
}
@Configuration
public static class HtmlWebSecurityConfigurerAdapter extends AadWebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
// @formatter:off
http.authorizeRequests()
.antMatchers("/login").permitAll()
.anyRequest().authenticated();
// @formatter:on
}
}
}
Tipo de aplicación
La propiedad spring.cloud.azure.active-directory.application-type
es opcional porque su valor se puede deducir de las dependencias. Debe establecer manualmente la propiedad solo cuando use el valor web_application_and_resource_server
.
Tiene dependencia: spring-security-oauth2-client | Tiene dependencia: spring-security-oauth2-resource-server | Valores válidos de un tipo de aplicación | Valor predeterminado |
---|---|---|---|
Sí | No | web_application |
web_application |
No | Sí | resource_server |
resource_server |
Sí | Sí | web_application ,resource_server ,resource_server_with_obo , web_application_and_resource_server |
resource_server_with_obo |
Propiedades configurables
El Spring Boot Starter para Microsoft Entra ID ofrece las siguientes propiedades:
Propiedades | Descripción |
---|---|
spring.cloud.azure.active-directory.app-id-uri | Utilizada por el servidor de recursos para validar la audiencia en el token de acceso. El token de acceso solo es válido cuando la audiencia es igual a los valores <your-client-ID> o <your-app-ID-URI> descritos anteriormente. |
spring.cloud.azure.active-directory.authorization-clients | Mapa que configura las API de recursos que la aplicación va a visitar. Cada elemento corresponde a una API de recursos que la aplicación va a visitar. En el código de Spring, cada elemento corresponde a un objeto OAuth2AuthorizedClient . |
spring.cloud.azure.active-directory.authorization-clients.<your-client-name>.scopes | Permisos de API de un servidor de recursos que la aplicación va a adquirir. |
spring.cloud.azure.active-directory.authorization-clients.<your-client-name>.authorization-grant-type | El tipo de cliente de autorización. Los tipos admitidos son authorization_code (tipo predeterminado para webapp), on_behalf_of (tipo predeterminado para resource-server) y client_credentials. |
spring.cloud.azure.active-directory.application-type | Consulte Tipo de aplicación. |
spring.cloud.azure.active-directory.profile.environment.active-directory-endpoint | Identificador URI de base del servidor de autorización. El valor predeterminado es https://login.microsoftonline.com/ . |
spring.cloud.azure.active-directory.credential.client-id | ID de aplicación registrado en Microsoft Entra ID. |
spring.cloud.azure.active-directory.credential.client-secret | Secreto de cliente de la aplicación registrada. |
spring.cloud.azure.active-directory.user-group.use-transitive-members | Use v1.0/me/transitiveMemberOf para obtener grupos si está activado el parámetro true. En otros casos, use /v1.0/me/memberOf . |
spring.cloud.azure.active-directory.post-logout-redirect-uri | Identificador URI de redirección para publicar el cierre de sesión. |
spring.cloud.azure.active-directory.profile.tenant-id | Identificador de inquilino de Azure. Los valores permitidos para tenant-id son: common , organizations , consumers o el identificador de inquilino. |
spring.cloud.azure.active-directory.user-group.allowed-group-names | Grupos de usuarios esperados a los que se concederá una autoridad si se encuentran en la respuesta de la llamada a MemberOf de Graph API. |
spring.cloud.azure.active-directory.user-name-attribute | Indica qué notificación será el nombre de la entidad de seguridad. |
En los siguientes ejemplos se muestra cómo usar estas propiedades:
Ejemplo de propiedad 1: para usar Azure China 21Vianet en lugar de Azure global, use el paso siguiente.
Agregue las siguientes propiedades al archivo application.yml:
spring: cloud: azure: active-directory: enabled: true profile: environment: active-directory-endpoint: https://login.partner.microsoftonline.cn
Con este método, puede usar una nube soberana de Azure o una nube nacional en lugar de la nube pública de Azure.
Ejemplo de propiedad 2: para usar un nombre de grupo para proteger algún método en una aplicación web, siga estos pasos:
Agregue la siguiente propiedad al archivo application.yml:
spring:
cloud:
azure:
active-directory:
enabled: true
user-group:
allowed-groups: group1, group2
Use la configuración de seguridad predeterminada o proporcione su propia configuración.
Opción 1: Use la configuración predeterminada. Con esta opción no hay que hacer nada. La clase DefaultAadWebSecurityConfigurerAdapter
se configura automáticamente.
Opción 2: Aplicar una configuración autodefinida. Para proporcionar una configuración, extienda la clase AadWebSecurityConfigurerAdapter
y llame a super.configure(http)
en la función configure(HttpSecurity http)
, como se muestra en el ejemplo siguiente:
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class AadOAuth2LoginSecurityConfig extends AadWebSecurityConfigurerAdapter {
/**
* Add configuration logic as needed.
*/
@Override
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
http.authorizeRequests()
.anyRequest().authenticated();
// Do some custom configuration.
}
}
Use la anotación @PreAuthorize
para proteger el método, como se muestra en el ejemplo siguiente:
@Controller
public class RoleController {
@GetMapping("group1")
@ResponseBody
@PreAuthorize("hasRole('ROLE_group1')")
public String group1() {
return "group1 message";
}
@GetMapping("group2")
@ResponseBody
@PreAuthorize("hasRole('ROLE_group2')")
public String group2() {
return "group2 message";
}
@GetMapping("group1Id")
@ResponseBody
@PreAuthorize("hasRole('ROLE_<group1-id>')")
public String group1Id() {
return "group1Id message";
}
@GetMapping("group2Id")
@ResponseBody
@PreAuthorize("hasRole('ROLE_<group2-id>')")
public String group2Id() {
return "group2Id message";
}
}
Ejemplo de propiedad 3: para habilitar el flujo de credenciales de cliente en un servidor de recursos que visita otros servidores de recursos, siga estos pasos:
Agregue la siguiente propiedad al archivo application.yml:
spring:
cloud:
azure:
active-directory:
enabled: true
authorization-clients:
webapiC: # When authorization-grant-type is null, on behalf of flow is used by default
authorization-grant-type: client_credentials
scopes:
- <Web-API-C-app-id-url>/.default
Agregue a la aplicación código similar al del ejemplo siguiente:
@PreAuthorize("hasAuthority('SCOPE_Obo.WebApiA.ExampleScope')")
@GetMapping("webapiA/webapiC")
public String callClientCredential() {
String body = webClient
.get()
.uri(CUSTOM_LOCAL_READ_ENDPOINT)
.attributes(clientRegistrationId("webapiC"))
.retrieve()
.bodyToMono(String.class)
.block();
LOGGER.info("Response from Client Credential: {}", body);
return "client Credential response " + (null != body ? "success." : "failed.");
}
Características avanzadas
Compatibilidad con el control de acceso mediante un token de identificador en una aplicación web
El iniciador admite la creación de un elemento GrantedAuthority
a partir de la notificación roles
de un token de identificador para permitir el uso del token de identificador para la autorización en una aplicación web. Puede usar la característica appRoles
de Microsoft Entra ID para crear una notificación roles
e implementar el control de acceso.
Nota:
La notificación roles
generada a partir de appRoles
se decora con el prefijo APPROLE_
.
Cuando use appRoles
como una notificación roles
, evite configurar un atributo de grupo como roles
al mismo tiempo. De lo contrario, el atributo de grupo invalidará la notificación para que contenga información del grupo en lugar de appRoles
. Debe evitar la siguiente configuración en el manifiesto:
"optionalClaims": {
"idtoken": [{
"name": "groups",
"additionalProperties": ["emit_as_roles"]
}]
}
Para admitir el control de acceso mediante un token de identificador en una aplicación web, siga estos pasos:
Agregue roles de aplicación en la aplicación y asígnelos a usuarios o grupos. Para más información, consulte Procedimiento: Incorporación de roles de aplicación a una aplicación y su recepción en el token.
Agregue la siguiente configuración de appRoles
al manifiesto de la aplicación:
"appRoles": [
{
"allowedMemberTypes": [
"User"
],
"displayName": "Admin",
"id": "2fa848d0-8054-4e11-8c73-7af5f1171001",
"isEnabled": true,
"description": "Full admin access",
"value": "Admin"
}
]
Agregue a la aplicación código similar al del ejemplo siguiente:
@GetMapping("Admin")
@ResponseBody
@PreAuthorize("hasAuthority('APPROLE_Admin')")
public String Admin() {
return "Admin message";
}
Solución de problemas
Habilitación del registro de cliente
Los SDK de Azure para Java incluyen un historial de registro uniforme que permite solucionar y resolver errores de la aplicación. Los registros generados capturarán el flujo de una aplicación antes de alcanzar el estado terminal para ayudar a encontrar el problema principal. Consulte la wiki de registro para obtener instrucciones sobre cómo habilitar el registro.
Habilitación del registro de Spring
Spring permite que todos los sistemas de registro admitidos establezcan niveles de registrador en el entorno de Spring (por ejemplo, en application.properties), mediante logging.level.<logger-name>=<level>
, donde level (nivel) puede ser TRACE, DEBUG, INFO, WARN, ERROR, FATAL u OFF. Puede configurar el registrador raíz mediante logging.level.root
.
En el ejemplo siguiente se muestra la posible configuración de registro en el archivo application.properties:
logging.level.root=WARN
logging.level.org.springframework.web=DEBUG
logging.level.org.hibernate=ERROR
Para más información sobre la configuración del registro en Spring, consulte Registro en la documentación de Spring.
Pasos siguientes
Para más información acerca de Spring y Azure, vaya al centro de documentación de Azure.