package Ġcom . nom kh on wa an . mb . autoconfigure Ċ Ċ import Ġorg . springframework . boot . autoconfigure . condition . Conditional On Missing Bean Ċ import Ġorg . springframework . boot . autoconfigure . security . oauth 2 . resource . Principal Extractor Ċ import Ġorg . springframework . context . annotation . Bean Ċ import Ġorg . springframework . context . annotation . Configuration Ċ import Ġorg . springframework . security . config . annotation . method . configuration . Enable Global Method Security Ċ import Ġorg . springframework . security . config . annotation . web . builders . Http Security Ċ import Ġorg . springframework . security . oauth 2 . config . annotation . web . configuration . Enable Resource Server Ċ import Ġorg . springframework . security . oauth 2 . config . annotation . web . configuration . Resource Server Configurer Adapter Ċ Ċ /** Ċ Ġ* ĠAn Ġauto - configure Ġof Ġthe ĠOAuth 2 Ġresource Ġserver . Ċ Ġ*/ Ċ @ Configuration Ċ @ Enable Resource Server Ċ @ Enable Global Method Security ( pre Post Enabled Ġ= Ġtrue ) Ċ class ĠResource Server Configuration Ġ: ĠResource Server Configurer Adapter () Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConfig ures Ġall Ġroutes Ġpermission . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġhttp ĠAn ĠHTTP Ġsecurity Ġobject ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġconfigure ( http : ĠHttp Security ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġ@ formatter : off ĊĠĠĠĠĠĠĠ Ġhttp ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. cors (). disable () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. csrf (). disable () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. authorize Requests () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. ant Matchers ("/ v 1 / files / upload /** "). authenticated () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. any Request (). permit All () ĊĠĠĠĠĠĠĠ Ġ// Ġ@ formatter : on ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCustom izes Ġprincipal Ġto Ġusing Ġ" sub " Ġfield . ĠDefault Ġis Ġ" name ". ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġ@ Conditional On Missing Bean ĊĠĠĠ Ġfun Ġprincipal Extractor (): ĠPrincipal Extractor Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠPrincipal Extractor Ġ{ Ġit [" sub "] Ġ} ĊĠĠĠ Ġ} Ċ } Ċ