From eb720241da3d786c6ec79f2325277fa4af23846f Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Wed, 26 Feb 2025 13:04:55 +0100 Subject: [feature] Enforce OAuth token scopes (#3835) * move tokenauth to apiutil * enforce scopes * docs * update test models, remove deprecated "follow" * file header * tests * tweak scope matcher * simplify... * fix tests * log user out of settings panel in case of oauth error --- internal/processing/account/move.go | 4 ++-- internal/processing/account/move_test.go | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'internal/processing/account') diff --git a/internal/processing/account/move.go b/internal/processing/account/move.go index 44f8da268..1c5209e70 100644 --- a/internal/processing/account/move.go +++ b/internal/processing/account/move.go @@ -27,6 +27,7 @@ import ( "github.com/superseriousbusiness/gotosocial/internal/ap" apimodel "github.com/superseriousbusiness/gotosocial/internal/api/model" + apiutil "github.com/superseriousbusiness/gotosocial/internal/api/util" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/federation/dereferencing" "github.com/superseriousbusiness/gotosocial/internal/gtscontext" @@ -34,14 +35,13 @@ import ( "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/id" "github.com/superseriousbusiness/gotosocial/internal/messages" - "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/uris" "golang.org/x/crypto/bcrypt" ) func (p *Processor) MoveSelf( ctx context.Context, - authed *oauth.Auth, + authed *apiutil.Auth, form *apimodel.AccountMoveRequest, ) gtserror.WithCode { // Ensure valid MovedToURI. diff --git a/internal/processing/account/move_test.go b/internal/processing/account/move_test.go index 9d06829ca..76cbe1512 100644 --- a/internal/processing/account/move_test.go +++ b/internal/processing/account/move_test.go @@ -24,6 +24,7 @@ import ( "github.com/stretchr/testify/suite" apimodel "github.com/superseriousbusiness/gotosocial/internal/api/model" + apiutil "github.com/superseriousbusiness/gotosocial/internal/api/util" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/oauth" ) @@ -56,7 +57,7 @@ func (suite *MoveTestSuite) TestMoveAccountOK() { // Trigger move from zork to admin. if err := suite.accountProcessor.MoveSelf( ctx, - &oauth.Auth{ + &apiutil.Auth{ Token: oauth.DBTokenToToken(suite.testTokens["local_account_1"]), Application: suite.testApplications["local_account_1"], User: suite.testUsers["local_account_1"], @@ -120,7 +121,7 @@ func (suite *MoveTestSuite) TestMoveAccountNotAliased() { // not aliased back to zork. err := suite.accountProcessor.MoveSelf( ctx, - &oauth.Auth{ + &apiutil.Auth{ Token: oauth.DBTokenToToken(suite.testTokens["local_account_1"]), Application: suite.testApplications["local_account_1"], User: suite.testUsers["local_account_1"], @@ -150,7 +151,7 @@ func (suite *MoveTestSuite) TestMoveAccountBadPassword() { // not aliased back to zork. err := suite.accountProcessor.MoveSelf( ctx, - &oauth.Auth{ + &apiutil.Auth{ Token: oauth.DBTokenToToken(suite.testTokens["local_account_1"]), Application: suite.testApplications["local_account_1"], User: suite.testUsers["local_account_1"], -- cgit v1.2.3