@@ -324,6 +324,13 @@ func registerRoutes(m *web.Router) {
324324 }
325325 }
326326
327+ oauth2Enabled := func (ctx * context.Context ) {
328+ if ! setting .OAuth2 .Enabled {
329+ ctx .Error (http .StatusForbidden )
330+ return
331+ }
332+ }
333+
327334 reqMilestonesDashboardPageEnabled := func (ctx * context.Context ) {
328335 if ! setting .Service .ShowMilestonesDashboardPage {
329336 ctx .Error (http .StatusForbidden )
@@ -546,16 +553,18 @@ func registerRoutes(m *web.Router) {
546553 m .Any ("/user/events" , routing .MarkLongPolling , events .Events )
547554
548555 m .Group ("/login/oauth" , func () {
549- m .Get ("/authorize" , web .Bind (forms.AuthorizationForm {}), auth .AuthorizeOAuth )
550- m .Post ("/grant" , web .Bind (forms.GrantApplicationForm {}), auth .GrantApplicationOAuth )
551- // TODO manage redirection
552- m .Post ("/authorize" , web .Bind (forms.AuthorizationForm {}), auth .AuthorizeOAuth )
553- }, ignSignInAndCsrf , reqSignIn )
554-
555- m .Methods ("GET, OPTIONS" , "/login/oauth/userinfo" , optionsCorsHandler (), ignSignInAndCsrf , auth .InfoOAuth )
556- m .Methods ("POST, OPTIONS" , "/login/oauth/access_token" , optionsCorsHandler (), web .Bind (forms.AccessTokenForm {}), ignSignInAndCsrf , auth .AccessTokenOAuth )
557- m .Methods ("GET, OPTIONS" , "/login/oauth/keys" , optionsCorsHandler (), ignSignInAndCsrf , auth .OIDCKeys )
558- m .Methods ("POST, OPTIONS" , "/login/oauth/introspect" , optionsCorsHandler (), web .Bind (forms.IntrospectTokenForm {}), ignSignInAndCsrf , auth .IntrospectOAuth )
556+ m .Group ("" , func () {
557+ m .Get ("/authorize" , web .Bind (forms.AuthorizationForm {}), auth .AuthorizeOAuth )
558+ m .Post ("/grant" , web .Bind (forms.GrantApplicationForm {}), auth .GrantApplicationOAuth )
559+ // TODO manage redirection
560+ m .Post ("/authorize" , web .Bind (forms.AuthorizationForm {}), auth .AuthorizeOAuth )
561+ }, ignSignInAndCsrf , reqSignIn )
562+
563+ m .Methods ("GET, OPTIONS" , "/userinfo" , optionsCorsHandler (), ignSignInAndCsrf , auth .InfoOAuth )
564+ m .Methods ("POST, OPTIONS" , "/access_token" , optionsCorsHandler (), web .Bind (forms.AccessTokenForm {}), ignSignInAndCsrf , auth .AccessTokenOAuth )
565+ m .Methods ("GET, OPTIONS" , "/keys" , optionsCorsHandler (), ignSignInAndCsrf , auth .OIDCKeys )
566+ m .Methods ("POST, OPTIONS" , "/introspect" , optionsCorsHandler (), web .Bind (forms.IntrospectTokenForm {}), ignSignInAndCsrf , auth .IntrospectOAuth )
567+ }, oauth2Enabled )
559568
560569 m .Group ("/user/settings" , func () {
561570 m .Get ("" , user_setting .Profile )
@@ -596,17 +605,24 @@ func registerRoutes(m *web.Router) {
596605 }, openIDSignInEnabled )
597606 m .Post ("/account_link" , linkAccountEnabled , security .DeleteAccountLink )
598607 })
599- m .Group ("/applications/oauth2" , func () {
600- m .Get ("/{id}" , user_setting .OAuth2ApplicationShow )
601- m .Post ("/{id}" , web .Bind (forms.EditOAuth2ApplicationForm {}), user_setting .OAuthApplicationsEdit )
602- m .Post ("/{id}/regenerate_secret" , user_setting .OAuthApplicationsRegenerateSecret )
603- m .Post ("" , web .Bind (forms.EditOAuth2ApplicationForm {}), user_setting .OAuthApplicationsPost )
604- m .Post ("/{id}/delete" , user_setting .DeleteOAuth2Application )
605- m .Post ("/{id}/revoke/{grantId}" , user_setting .RevokeOAuth2Grant )
608+
609+ m .Group ("/applications" , func () {
610+ // oauth2 applications
611+ m .Group ("/oauth2" , func () {
612+ m .Get ("/{id}" , user_setting .OAuth2ApplicationShow )
613+ m .Post ("/{id}" , web .Bind (forms.EditOAuth2ApplicationForm {}), user_setting .OAuthApplicationsEdit )
614+ m .Post ("/{id}/regenerate_secret" , user_setting .OAuthApplicationsRegenerateSecret )
615+ m .Post ("" , web .Bind (forms.EditOAuth2ApplicationForm {}), user_setting .OAuthApplicationsPost )
616+ m .Post ("/{id}/delete" , user_setting .DeleteOAuth2Application )
617+ m .Post ("/{id}/revoke/{grantId}" , user_setting .RevokeOAuth2Grant )
618+ }, oauth2Enabled )
619+
620+ // access token applications
621+ m .Combo ("" ).Get (user_setting .Applications ).
622+ Post (web .Bind (forms.NewAccessTokenForm {}), user_setting .ApplicationsPost )
623+ m .Post ("/delete" , user_setting .DeleteApplication )
606624 })
607- m .Combo ("/applications" ).Get (user_setting .Applications ).
608- Post (web .Bind (forms.NewAccessTokenForm {}), user_setting .ApplicationsPost )
609- m .Post ("/applications/delete" , user_setting .DeleteApplication )
625+
610626 m .Combo ("/keys" ).Get (user_setting .Keys ).
611627 Post (web .Bind (forms.AddKeyForm {}), user_setting .KeysPost )
612628 m .Post ("/keys/delete" , user_setting .DeleteKey )
@@ -780,12 +796,7 @@ func registerRoutes(m *web.Router) {
780796 m .Post ("/regenerate_secret" , admin .ApplicationsRegenerateSecret )
781797 m .Post ("/delete" , admin .DeleteApplication )
782798 })
783- }, func (ctx * context.Context ) {
784- if ! setting .OAuth2 .Enabled {
785- ctx .Error (http .StatusForbidden )
786- return
787- }
788- })
799+ }, oauth2Enabled )
789800
790801 m .Group ("/actions" , func () {
791802 m .Get ("" , admin .RedirectToDefaultSetting )
@@ -909,12 +920,7 @@ func registerRoutes(m *web.Router) {
909920 m .Post ("/regenerate_secret" , org .OAuthApplicationsRegenerateSecret )
910921 m .Post ("/delete" , org .DeleteOAuth2Application )
911922 })
912- }, func (ctx * context.Context ) {
913- if ! setting .OAuth2 .Enabled {
914- ctx .Error (http .StatusForbidden )
915- return
916- }
917- })
923+ }, oauth2Enabled )
918924
919925 m .Group ("/hooks" , func () {
920926 m .Get ("" , org .Webhooks )
0 commit comments