stable

Clone or download

Read-only

Save scopes authorized by user

Part of story #14570 Authorization grant confirmation page How to test: - Create a new OAuth2 app in a project administration. - Access the authorization endpoint. '<client_id> and <redirect_uri> must be replaced. <redirect_uri> should be URL-encoded. https://tuleap.example.com/oauth2/authorize?client_id=<client_id>&state=xyz&response_type=code&scope=demo%20read:project&redirect_uri=<redirect_uri> When you click on "Authorize", you should be redirected to the <redirect_uri> with a "code" parameter representing the authorization code. Both the "demo" and the "read:project" scopes are saved in the database and associated to this authorization. Change-Id: If96c4ae2d677f4eed4e263e77de247871a3d8502

Modified Files

Name
M plugins/oauth2_server/db/install.sql +6 −0 Go to diff View file
A plugins/oauth2_server/db/mysql/2020/202003111449_create_authorization_scope_table.php +46 −0 Go to diff View file
M plugins/oauth2_server/db/uninstall.sql +1 −0 Go to diff View file
M plugins/oauth2_server/include/AuthorizationServer/AuthorizationEndpointPostController.php +28 −4 Go to diff View file
M plugins/oauth2_server/include/AuthorizationServer/AuthorizationFormPresenter.php +22 −11 Go to diff View file
M plugins/oauth2_server/include/AuthorizationServer/AuthorizationFormPresenterBuilder.php +10 −3 Go to diff View file
A plugins/oauth2_server/include/AuthorizationServer/OAuth2ScopeIdentifierPresenter.php +38 −0 Go to diff View file
M plugins/oauth2_server/include/User/AuthorizationDao.php +5 −5 Go to diff View file
M plugins/oauth2_server/include/User/AuthorizationManager.php +32 −8 Go to diff View file
A plugins/oauth2_server/include/User/AuthorizationScopeDao.php +45 −0 Go to diff View file
A plugins/oauth2_server/include/User/NewAuthorization.php +69 −0 Go to diff View file
M plugins/oauth2_server/include/oauth2_serverPlugin.php +5 −1 Go to diff View file
M plugins/oauth2_server/phpunit/AuthorizationServer/AuthorizationEndpointPostControllerTest.php +31 −8 Go to diff View file
M plugins/oauth2_server/phpunit/AuthorizationServer/AuthorizationFormPresenterBuilderTest.php +24 −15 Go to diff View file
M plugins/oauth2_server/phpunit/AuthorizationServer/AuthorizationFormRendererTest.php +11 −4 Go to diff View file
M plugins/oauth2_server/phpunit/User/AuthorizationManagerTest.php +46 −16 Go to diff View file
M plugins/oauth2_server/templates/authorization-form.mustache +5 −2 Go to diff View file