Skip to content
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

athmangude/provisioninginfospec #344

Open
wants to merge 3 commits into
base: dm/permissionspec
Choose a base branch
from

Conversation

athmangude
Copy link

Provisioning Info for Permissions in Graph

The provisioning info file is a complementary JSON file to the JSON permission files that contains a list of permissions and the cloud environments in which they are present. It can serve to instruct publishing on which environments to publish a new permission to as well as show which clouds existing permissions are present in.

@athmangude athmangude changed the title Athmangude/provisioninginfospec athmangude/provisioninginfospec May 9, 2023
"isPresent": true,
"isHidden": false,
"isDisabled": false,
"id": "bed71753-0fq8-42a2-b33c-c1acb02ecd17"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the id version/cloud dependent or can we pull it up to the top level?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is cloud dependent not just for the whole permission but also for different schemes of the same permission

"schemes": [
{
"DelegatedWork": {
"isPresent": true,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels redundant. Can we implicitly assume that if we don't have an entry then it's not present?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed

The "isHidden" member is a boolean value that indicates if a permission should be publicly usable in the API.

#### isDisabled
The "isDisabled" member is a boolean value that indicates if a permission is disabled in the environment.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we have disabled permissions?

This member is a JSON object that describes the provisioning info for a permission.

#### environments
The "environments" member is an array of objects that identifies the deployment environments in which the permission SHOULD be supported. The key of each member is the cloud environment identifier used for the [Cloud Environment Object](#cloudEnvironmentObject)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this mean that we will have a block for each of the environments and versions where the permission is supported?

# Provisioning Info for Permissions in Graph

## Abstract
The provisioning info file is a complementary JSON file to the JSON permission files that contains a list of permissions and the cloud environments in which they are present. It can serve to instruct publishing on which environments to publish a new permission to as well as show which clouds existing permissions are present in.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we merge this with the provisioning info entries already in the main file? https://github.com/microsoftgraph/msgraph-metadata/blob/dm/permissionspec/specs/permissions.md#provisioning-info-object


### <a name="versionObject"></a>Version Object
This member is a JSON object whose members are scheme objects. The key of each member is the scheme identifier used for the [Scheme Object](#schemeObject).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like we should have links to Cloud Environment Object, Version Object and Scheme Object.



### resourceAppId
The "resourceAppId" member value provides an identifier of the resource server that is used to enforce Conditional Access checks for this permission.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duplicate entry?

Added `resourceAppId` attribute to example
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants