anchor.diff:  <3> Here we obtain the current request user/caller `Principal`. For an unsecured call this will be null, so we build the user name by checking `caller` against null.
   <4> The reply we build up makes use of the caller name, the `isSecure()` and `getAuthenticationScheme()` states of the request `SecurityContext`.
   
  +
  +=== Setting up application.properties
  +
  +You need to configure your application with the following minimal properties:
  +
  +[source, properties]
  +----
  +quarkus.oauth2.client-id=client_id
  +quarkus.oauth2.client-secret=secret
  +quarkus.oauth2.introspection-url=http://oauth-server/introspect
  +----
  +
  +You need to specify the introspection URL of your authentication server and the `client-id` / `client-secret` that your application will use to authenticate itself to the authentication server. +
  +The extension will then use this information to validate the token and recover the information associate with it.
  +
  +For all configuration properties, see the link:#config-reference[Configuration reference] section at the end of this guide.
  +
   == Run the application
   
   Now we are ready to run our application. Use:
   
   [source,shell]
   ----
  -./mvnw compile quarkus:dev
  -----
  -
  -and you should see output similar to:
  -
  -.quarkus:dev Output
  -[source,shell]
  -----
  -$ ./mvnw clean compile quarkus:dev
  -[INFO] Scanning for projects...
  -[INFO] 
  -[INFO] ---------------------< org.acme:security-oauth2-quickstart >---------------------
  -[INFO] Building security-oauth2-quickstart 1.0-SNAPSHOT
  -[INFO] --------------------------------[ jar ]---------------------------------
  -...
  -[INFO] --- quarkus-maven-plugin:999-SNAPSHOT:dev (default-cli) @ security-oauth2-quickstart ---
  -Listening for transport dt_socket at address: 5005
  -2019-07-16 09:58:09,753 INFO  [io.qua.dep.QuarkusAugmentor] (main) Beginning quarkus augmentation
  -2019-07-16 09:58:10,884 INFO  [io.qua.dep.QuarkusAugmentor] (main) Quarkus augmentation completed in 1131ms
  -2019-07-16 09:58:11,385 INFO  [io.quarkus] (main) Quarkus 0.20.0 started in 1.813s. Listening on: http://[::]:8080
  -2019-07-16 09:58:11,391 INFO  [io.quarkus] (main) Installed features: [cdi, resteasy, resteasy-jsonb, security, security-oauth2]
  -
  +./mvnw quarkus:dev
   ----
   
   Now that the REST endpoint is running, we can access it using a command line tool like curl:
   
  -.curl command for /secured/permit-all
   [source,shell]
   ----
   $ curl http://127.0.0.1:8080/secured/permit-all; echo
  
positive.code: == Package and run the application
  
  As usual, the application can be packaged using `./mvnw clean package` and executed using the `-runner.jar` file:
  .Runner jar Example
  [source,shell]
  ----
  $ ./mvnw clean package
  
negative.code: ----
  
  You can also generate the native executable with `./mvnw clean package -Pnative`.
  
  [source,shell]
  ----
  $ ./mvnw clean package -Pnative
  