-
Notifications
You must be signed in to change notification settings - Fork 5.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Addendum | Access Reviews reviewer and stats APIs #10445
Conversation
Swagger Validation Report
|
Rule | Message |
---|---|
'PUT' operation 'AccessReviewDefaultSettings_Put' should use method name 'Create'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L655 |
|
'PATCH' operation 'AccessReviewInstanceMyDecisions_Patch' should use method name 'Update'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L972 |
|
A PUT operation request body schema should be the same as its 200 response schema, to allow reusing the same entity between GET and PUT. If the schema of the PUT request body is a superset of the GET response body, make sure you have a PATCH operation to make the resource updatable. Operation: 'AccessReviewDefaultSettings_Put' Request Model: 'AccessReviewScheduleSettings' Response Model: 'AccessReviewDefaultSettings' New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L651 |
|
A PUT operation request body schema should be the same as its 200 response schema, to allow reusing the same entity between GET and PUT. If the schema of the PUT request body is a superset of the GET response body, make sure you have a PATCH operation to make the resource updatable. Operation: 'AccessReviewScheduleDefinitions_CreateOrUpdateById' Request Model: 'AccessReviewScheduleDefinitionProperties' Response Model: 'AccessReviewScheduleDefinition' New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L188 |
|
OperationId has a noun that conflicts with one of the model names in definitions section. The model name will be disambiguated to 'AccessReviewDefaultSettingsModel'. Consider using the plural form of 'AccessReviewDefaultSettings' to avoid this. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L655 |
|
OperationId has a noun that conflicts with one of the model names in definitions section. The model name will be disambiguated to 'AccessReviewInstanceModel'. Consider using the plural form of 'AccessReviewInstance' to avoid this. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L380 |
|
OperationId has a noun that conflicts with one of the model names in definitions section. The model name will be disambiguated to 'AccessReviewInstanceModel'. Consider using the plural form of 'AccessReviewInstance' to avoid this. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L826 |
|
OperationId has a noun that conflicts with one of the model names in definitions section. The model name will be disambiguated to 'AccessReviewInstanceModel'. Consider using the plural form of 'AccessReviewInstance' to avoid this. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L427 |
|
OperationId has a noun that conflicts with one of the model names in definitions section. The model name will be disambiguated to 'AccessReviewDefaultSettingsModel'. Consider using the plural form of 'AccessReviewDefaultSettings' to avoid this. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L621 |
|
OperationId has a noun that conflicts with one of the model names in definitions section. The model name will be disambiguated to 'AccessReviewInstanceModel'. Consider using the plural form of 'AccessReviewInstance' to avoid this. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. New: Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json#L474 |
️⚠️
Avocado: 1 Warnings warning [Detail]
Rule | Message |
---|---|
The default tag contains multiple API versions swaggers. readme: specification/authorization/resource-manager/readme.md tag: specification/authorization/resource-manager/readme.md#tag-package-2020-04-preview |
️️✔️
ModelValidation succeeded [Detail] [Expand]
Validation passes for ModelValidation.
️️✔️
SemanticValidation succeeded [Detail] [Expand]
Validation passes for SemanticValidation.
️️✔️
[Staging] Cross Version BreakingChange (Base on preview version) succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️
[Staging] Cross Version BreakingChange (Base on stable version) succeeded [Detail] [Expand]
There are no breaking changes.
Azure Pipelines successfully started running 1 pipeline(s). |
Azure CLI Extension Generation
No readme.md specification configuration files were found that are associated with the files modified in this pull request, or swagger_to_sdk section in readme.md is not configured
|
azure-sdk-for-net
|
azure-sdk-for-python
|
azure-sdk-for-java
|
azure-sdk-for-python
|
azure-sdk-for-js
|
Trenton Generation
No readme.md specification configuration files were found that are associated with the files modified in this pull request, or swagger_to_sdk section in readme.md is not configured
|
azure-sdk-for-go
|
Can one of the admins verify this patch? |
1b97f33
to
702cc25
Compare
Azure Pipelines successfully started running 1 pipeline(s). |
702cc25
to
28891ab
Compare
Azure Pipelines successfully started running 1 pipeline(s). |
azure-sdk-for-python-track2
No readme.md specification configuration files were found that are associated with the files modified in this pull request, or swagger_to_sdk section in readme.md is not configured
|
28891ab
to
0868c78
Compare
Azure Pipelines successfully started running 1 pipeline(s). |
0868c78
to
c7cc159
Compare
Azure Pipelines successfully started running 1 pipeline(s). |
The LintDiff validation is failing because of a requirement to support list by resource group. This is something that we don't support - we only support access reviews at the subscription level. |
Please help suppress the lint error and solve the conflict to get it ready to merge. https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/85/Swagger-Suppression-Process |
c7cc159
to
141ec8b
Compare
Azure Pipelines successfully started running 1 pipeline(s). |
azure-resource-manager-schemas
|
3dbb520
to
58c712d
Compare
Swagger Generation Artifacts
|
2f70b71
to
e1c4415
Compare
e1c4415
to
88d738c
Compare
There are failures in SDK generation for Java and net but those have been failing in previous PRs as well. For example: #11975 |
* Added Access Reviews schema * Access Reviews Schema addendum | Expose reviewer and statistics APIs
* Added Access Reviews schema * Access Reviews Schema addendum | Expose reviewer and statistics APIs
* Added Access Reviews schema * Access Reviews Schema addendum | Expose reviewer and statistics APIs
Overview
Note : There is an existing PR already for the first commit of the changes here: #10010. It's already been approved and it's waiting on a deployment. The changes in this PR are an addendum to the existing PR. For the purposes of this PR, please only review the second commit titled "Access Reviews Schema addendum | Expose reviewer and statistics APIs"
The following is an overview of the end to end flow for access reviews scenario.
Changes
So far, we've exposed admin APIs which allow administrators to create review definitions and manage them. Now, we're exposing APIs that a reviewer can call to get all of the access review instances assigned to them. This is exposed as an unauthorized tenant-level API. This tenant-level API lists out all the access review instances assigned to the calling user. The results returned are scoped down to the records where the calling user is an approver. Additionally, the reviewer can drill-down into the decisions for an instance and then record a decision by updating the access review decision record.
There are some additional changes to allow reviewers that are specified dynamically(such as managers) and some statistics APIs are exposed.
Routes
The existing set of routes are as follows:
Management APIs
/subscriptions/{subscriptionId}/Microsoft.Authorization/accessReviewScheduleDefinitions
/subscriptions/{subscriptionId}/Microsoft.Authorization/accessReviewScheduleDefinitions/{id}/instances
/subscriptions/{subscriptionId}/Microsoft.Authorization/accessReviewScheduleDefinitions/{id}/instances/{id}/decisions
The new set of APIs exposed are:
Reviewer APIs(Tenant scope and Unauthorized)
/Microsoft.Authorization/accessReviewScheduleDefinitions?$expand=instances&$filter=assignedToMeForReview() and (instances/any(instance: instance/status eq ‘InProgress’)
/Microsoft.Authorization/accessReviewScheduleDefinitions/{id}/instances?$filter=assignedToMeForReview() and status eq ‘InProgress’
/Microsoft.Authorization/accessReviewScheduleDefinitions/{id}/instances/{id}/decisions?$filter=assignedToMeForReview()
/Microsoft.Authorization/accessReviewInstancesAssignedForMyApproval/{id}/decisionStatistics/assignedToMeForReview
/Microsoft.Authorization/accessReviewInstancesAssignedForMyApproval/{id}/acceptRecommendations (POST)
Management API :
/subscriptions/{subscriptionId}/Microsoft.Authorization/accessReviewScheduleDefinitions/{id}/instances/{id}/decisionStatistics/default