Skip to content

Commit 14accaf

Browse files
committed
chore: Add the correct security and x attributes and create security schema, fix path routes and change schema to be defined as requested.
1 parent 12c9b90 commit 14accaf

2 files changed

Lines changed: 41 additions & 5 deletions

File tree

‎app/Http/Controllers/Apis/Protected/Summit/OAuth2SummitTrackChairRatingTypesApiController.php‎

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,11 @@
1212
* limitations under the License.
1313
**/
1414

15+
use App\Models\Foundation\Main\IGroup;
1516
use App\Models\Foundation\Summit\Repositories\IPresentationTrackChairRatingTypeRepository;
1617
use App\Models\Foundation\Summit\Repositories\ISelectionPlanRepository;
1718
use App\ModelSerializers\SerializerUtils;
19+
use App\Security\SummitScopes;
1820
use App\Services\Model\ITrackChairRankingService;
1921
use Illuminate\Http\Response;
2022
use models\oauth2\IResourceServerContext;
@@ -96,7 +98,7 @@ protected function getRepository(): IBaseRepository
9698
summary: "Get all track chair rating types",
9799
operationId: "getAllTrackChairRatingTypes",
98100
tags: ['Track Chair Rating Types'],
99-
security: [['summit_oauth2' => []]],
101+
security: [["track_chair_rating_types_oauth2" => [SummitScopes::ReadSummitData]]],
100102
parameters: [
101103
new OA\Parameter(
102104
name: 'id',
@@ -214,7 +216,7 @@ function () {
214216
summary: "Get track chair rating type",
215217
operationId: "getTrackChairRatingType",
216218
tags: ['Track Chair Rating Types'],
217-
security: [['summit_oauth2' => []]],
219+
security: [["track_chair_rating_types_oauth2" => [SummitScopes::ReadSummitData]]],
218220
parameters: [
219221
new OA\Parameter(
220222
name: 'id',
@@ -292,7 +294,10 @@ public function getTrackChairRatingType($summit_id, $selection_plan_id, $type_id
292294
summary: "Create track chair rating type",
293295
operationId: "createTrackChairRatingType",
294296
tags: ['Track Chair Rating Types'],
295-
security: [['summit_oauth2' => []]],
297+
security: [["track_chair_rating_types_oauth2" => [SummitScopes::WriteSummitData]]],
298+
x: [
299+
"authz_groups" => [IGroup::SuperAdmins, IGroup::Administrators, IGroup::TrackChairs, IGroup::TrackChairsAdmins]
300+
],
296301
parameters: [
297302
new OA\Parameter(
298303
name: 'id',
@@ -356,7 +361,10 @@ public function addTrackChairRatingType($summit_id, $selection_plan_id) {
356361
summary: "Update track chair rating type",
357362
operationId: "updateTrackChairRatingType",
358363
tags: ['Track Chair Rating Types'],
359-
security: [['summit_oauth2' => []]],
364+
security: [["track_chair_rating_types_oauth2" => [SummitScopes::WriteSummitData]]],
365+
x: [
366+
"authz_groups" => [IGroup::SuperAdmins, IGroup::Administrators, IGroup::TrackChairs, IGroup::TrackChairsAdmins]
367+
],
360368
parameters: [
361369
new OA\Parameter(
362370
name: 'id',
@@ -427,7 +435,10 @@ public function updateTrackChairRatingType($summit_id, $selection_plan_id, $type
427435
summary: "Delete track chair rating type",
428436
operationId: "deleteTrackChairRatingType",
429437
tags: ['Track Chair Rating Types'],
430-
security: [['summit_oauth2' => []]],
438+
security: [["track_chair_rating_types_oauth2" => [SummitScopes::WriteSummitData]]],
439+
x: [
440+
"authz_groups" => [IGroup::SuperAdmins, IGroup::Administrators, IGroup::TrackChairs, IGroup::TrackChairsAdmins]
441+
],
431442
parameters: [
432443
new OA\Parameter(
433444
name: 'id',
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?php
2+
3+
namespace App\Swagger\Security;
4+
5+
use App\Security\SummitScopes;
6+
use OpenApi\Attributes as OA;
7+
8+
#[
9+
OA\SecurityScheme(
10+
type: 'oauth2',
11+
securityScheme: 'track_chair_rating_types_oauth2',
12+
flows: [
13+
new OA\Flow(
14+
authorizationUrl: L5_SWAGGER_CONST_AUTH_URL,
15+
tokenUrl: L5_SWAGGER_CONST_TOKEN_URL,
16+
flow: 'authorizationCode',
17+
scopes: [
18+
SummitScopes::ReadSummitData => 'Read Summit Data',
19+
SummitScopes::WriteSummitData => 'Write Summit Data',
20+
],
21+
),
22+
],
23+
)
24+
]
25+
class TrackChairRatingTypesAuthSchema {}

0 commit comments

Comments
 (0)