anchor.diff:  [[_update-appmanifest]]
   == Update AppManifest
   
  -In your application's `AppManifest` (top-level Spring `@Configuration` used to bootstrap the app), import the `IsisModuleExtSpringSecurityOAuth2` module.
  +In your application's `AppManifest` (top-level Spring `@Configuration` used to bootstrap the app), import `IsisModuleSecuritySpring`, `IsisModuleExtSpringSecurityOAuth2` modules and `AuthorizorShiro`.
   
   [source,java]
   .AppManifest.java
  
positive.code: 
  The module brings in a transitive dependency to `org.springframework.boot:spring-boot-starter-oauth2-client`.
  Using this, it provides an implementation of the xref:security:spring:about.adoc#authenticatorconverter-spi[AuthenticatorConverter SPI] that recognises the `OAuth2` principal provided by the Spring OAuth2 client.
  
  [#caveats]
  === Caveats
  
  Using this extension with the REST API may fail.
  That's because, (at the time of writing) this module has a dependency convergence conflict with `org.jboss.resteasy:resteasy-spring-boot-starter` specifically the `org.ow2.asm:asm` shared dependency:
  
  [source]
  ----
  Dependency convergence error for org.ow2.asm:asm:9.0 paths to dependency are:
  +-org.apache.isis.viewer:isis-viewer-restfulobjects-jaxrsresteasy4:2.0.0-SNAPSHOT
    +-org.jboss.resteasy:resteasy-spring-boot-starter:4.8.0.Final
      +-org.ow2.asm:asm:9.0
  and
  +-org.apache.isis.extensions:isis-extensions-spring-security-oauth2:2.0.0-SNAPSHOT
    +-org.springframework.boot:spring-boot-starter-oauth2-client:2.4.4
      +-org.springframework.security:spring-security-oauth2-client:5.4.5
        +-com.nimbusds:oauth2-oidc-sdk:8.36.1
          +-net.minidev:json-smart:2.3
            +-net.minidev:accessors-smart:1.2
              +-org.ow2.asm:asm:5.0.4
  ----
  
  
  
  
negative.code: 
  
  This guide describes the integration of Spring security's OAuth2 client.
  Authentication is done via OAuth2 and authorization via Shiro.
  
  include::docs:mavendeps:partial$setup-and-configure-dependencyManagement.adoc[leveloffset=+1]
  
  