Skip to content

Commit 7970431

Browse files
Merge pull request #259593 from shikhagarg1/main
Changes to clarify the concepts of data partition
2 parents d270d2f + 4aaa20c commit 7970431

File tree

4 files changed

+30
-16
lines changed

4 files changed

+30
-16
lines changed

articles/energy-data-services/concepts-entitlements.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ Access management is a critical function for any service or resource. The entitl
1515

1616
## Groups
1717

18-
The entitlements service of Azure Data Manager for Energy allows you to create groups and manage memberships of the groups. An entitlement group defines permissions on services/data sources for your Azure Data Manager for Energy instance. Users added to a given group obtain the associated permissions.
18+
The entitlements service of Azure Data Manager for Energy allows you to create groups and manage memberships of the groups. An entitlement group defines permissions on services/data sources for a given data partition in your Azure Data Manager for Energy instance. Users added to a given group obtain the associated permissions. Please note that different groups and associated user entitlements need to be set for a new data partition even in the same Azure Data Manager for Energy instance.
1919

2020
The entitlements service enables three use cases for authorization:
2121

2222
- **Data groups** used for data authorization (for example, data.welldb.viewers, data.welldb.owners)
2323
- **Service groups** used for service authorization (for example, service.storage.user, service.storage.admin)
2424
- **User groups** used for hierarchical grouping of user and service identities (for example, users.datalake.viewers, users.datalake.editors)
2525

26-
Some user, data, and service groups are created by default when a data partition is provisioned with details in [Bootstrapped OSDU Entitlements Groups](https://community.opengroup.org/osdu/platform/deployment-and-operations/infra-azure-provisioning/-/blob/master/docs/osdu-entitlement-roles.md).
26+
Some user, data, and service groups are created by default when a data partition is provisioned. Details of these groups and their hierarchy scope is in [Bootstrapped OSDU Entitlements Groups](https://community.opengroup.org/osdu/platform/deployment-and-operations/infra-azure-provisioning/-/blob/master/docs/osdu-entitlement-roles.md).
2727

2828
## Group naming
2929

articles/energy-data-services/how-to-convert-segy-to-ovds.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ If the user isn't part of the required group, you can add the required entitleme
9292

9393
[![Screenshot that shows the API call to get register a user as an admin in Postman.](media/how-to-convert-segy-to-vds/postman-api-add-user-to-admins.png)](media/how-to-convert-segy-to-vds/postman-api-add-user-to-admins.png#lightbox)
9494

95-
If you haven't yet created entitlements groups, follow the directions as outlined in [How to manage users](how-to-manage-users.md). If you would like to see what groups you have, use [Get entitlements groups for a given user](how-to-manage-users.md#get-entitlements-groups-for-a-given-user). Data access isolation is achieved with this dedicated ACL (access control list) per object within a given data partition.
95+
If you haven't yet created entitlements groups, follow the directions as outlined in [How to manage users](how-to-manage-users.md). If you would like to see what groups you have, use [Get entitlements groups for a given user](how-to-manage-users.md#get-entitlements-groups-for-a-given-user-in-a-data-partition). Data access isolation is achieved with this dedicated ACL (access control list) per object within a given data partition.
9696

9797
### Prepare Subproject
9898

@@ -229,4 +229,4 @@ OSDU™ is a trademark of The Open Group.
229229
## Next steps
230230
<!-- Add a context sentence for the following links -->
231231
> [!div class="nextstepaction"]
232-
> [How to convert a segy to zgy file](./how-to-convert-segy-to-zgy.md)
232+
> [How to convert a segy to zgy file](./how-to-convert-segy-to-zgy.md)

articles/energy-data-services/how-to-convert-segy-to-zgy.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ If the user isn't part of the required group, you can add the required entitleme
126126

127127
[![Screenshot that shows the API call to get register a user as an admin in Postman.](media/how-to-convert-segy-to-zgy/postman-api-add-user-to-admins.png)](media/how-to-convert-segy-to-zgy/postman-api-add-user-to-admins.png#lightbox)
128128

129-
If you haven't yet created entitlements groups, follow the directions as outlined in [How to manage users](how-to-manage-users.md). If you would like to see what groups you have, use [Get entitlements groups for a given user](how-to-manage-users.md#get-entitlements-groups-for-a-given-user). Data access isolation is achieved with this dedicated ACL (access control list) per object within a given data partition.
129+
If you haven't yet created entitlements groups, follow the directions as outlined in [How to manage users](how-to-manage-users.md). If you would like to see what groups you have, use [Get entitlements groups for a given user](how-to-manage-users.md#get-entitlements-groups-for-a-given-user-in-a-data-partition). Data access isolation is achieved with this dedicated ACL (access control list) per object within a given data partition.
130130

131131
### Prepare Subproject
132132

@@ -256,4 +256,4 @@ OSDU&trade; is a trademark of The Open Group.
256256
## Next steps
257257
<!-- Add a context sentence for the following links -->
258258
> [!div class="nextstepaction"]
259-
> [How to convert SEGY to OVDS](./how-to-convert-segy-to-ovds.md)
259+
> [How to convert SEGY to OVDS](./how-to-convert-segy-to-ovds.md)

articles/energy-data-services/how-to-manage-users.md

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ ms.custom: template-how-to
1010
---
1111

1212
# How to manage users
13-
In this article, you'll learn how to manage users and their memberships in OSDU groups in Azure Data Manager for Energy. [Entitlements APIs](https://community.opengroup.org/osdu/platform/security-and-compliance/entitlements/-/tree/master/) are used to add or remove users to OSDU groups and to check the entitlements when the user tries to access the OSDU services or data. For more information about OSDU groups, see [entitlement services](concepts-entitlements.md).
13+
In this article, you learn how to manage users and their memberships in OSDU groups in Azure Data Manager for Energy. [Entitlements APIs](https://community.opengroup.org/osdu/platform/security-and-compliance/entitlements/-/tree/master/) are used to add or remove users to OSDU groups and to check the entitlements when the user tries to access the OSDU services or data. For more information about OSDU groups, see [entitlement services](concepts-entitlements.md).
1414

1515

1616
## Prerequisites
1717
1. Create an Azure Data Manager for Energy instance using the tutorial at [How to create Azure Data Manager for Energy instance](quickstart-create-microsoft-energy-data-services-instance.md).
1818
2. Generate the access token needed to call the Entitlements APIs.
1919
3. Get various parameters of your instance such as client-id, client-secret, etc.
20-
4. Keep all these parameter values handy as they will be needed for executing different user management requests via the Entitlements API.
20+
4. Keep all these parameter values handy as they are needed for executing different user management requests via the Entitlements API.
2121

2222
## Fetch Parameters
2323
#### Find `tenant-id`
@@ -30,7 +30,7 @@ In this article, you'll learn how to manage users and their memberships in OSDU
3030
:::image type="content" source="media/how-to-manage-users/tenant-id.png" alt-text="Screenshot of finding the tenant-id.":::
3131

3232
#### Find `client-id`
33-
It's the same value that you used to register your application during the provisioning of your [Azure Data Manager for Energy instance](quickstart-create-microsoft-energy-data-services-instance.md). It is often referred to as `app-id`.
33+
It's the same value that you use to register your application during the provisioning of your [Azure Data Manager for Energy instance](quickstart-create-microsoft-energy-data-services-instance.md). It is often referred to as `app-id`.
3434

3535
1. Find the `client-id` in the *Essentials* pane of Azure Data Manager for Energy *Overview* page.
3636
2. Copy the `client-id` and paste it into an editor to be used later.
@@ -99,19 +99,33 @@ curl --location --request POST 'https://login.microsoftonline.com/<tenant-id>/oa
9999
"access_token": "abcdefgh123456............."
100100
}
101101
```
102-
2. Copy the `access_token` value from the response. You'll need it to pass as one of the headers in all calls to the Entitlements APIs.
102+
2. Copy the `access_token` value from the response. You need it to pass as one of the headers in all calls to the Entitlements APIs.
103103

104104
## Fetch OID
105105
`object-id` (OID) is the Microsoft Entra user Object ID.
106106

107107
1. Find the 'object-id' (OID) of the user(s) first. If you are managing an application's access, you must find and use the application ID (or client ID) instead of the OID.
108-
2. Input the `object-id` (OID) of the users (or the application or client ID if managing access for an application) as parameters in the calls to the Entitlements API of your Azure Data Manager for Energy Instance.
108+
2. Input the `object-id` (OID) of the users (or the application or client ID if managing access for an application) as parameters in the calls to the Entitlements API of your Azure Data Manager for Energy instance.
109109

110110
:::image type="content" source="media/how-to-manage-users/azure-active-directory-object-id.png" alt-text="Screenshot of finding the object-id from Microsoft Entra I D.":::
111111

112112
:::image type="content" source="media/how-to-manage-users/profile-object-id.png" alt-text="Screenshot of finding the object-id from the profile.":::
113113

114-
## Get the list of all available groups
114+
## First time addition of users in a new data partition
115+
In order to add entitlements to a new data partition of Azure Data Manager for Energy instance, use the SPN token of the app that was used to provision the instance. If you try to directly use user tokens for adding entitlements, it results in 401 error. The SPN token must be used to add initial users in the system and those users (with admin access) can then manage additional users.
116+
117+
The SPN is generated using client_credentials flow
118+
```bash
119+
curl --location --request POST 'https://login.microsoftonline.com/<tenant-id>/oauth2/token' \
120+
--header 'Content-Type: application/x-www-form-urlencoded' \
121+
--data-urlencode 'grant_type=client_credentials' \
122+
--data-urlencode 'scope=<client-id>.default' \
123+
--data-urlencode 'client_id=<client-id>' \
124+
--data-urlencode 'client_secret=<client-secret>' \
125+
--data-urlencode 'resource=<client-id>'
126+
```
127+
128+
## Get the list of all available groups in a data partition
115129

116130
Run the below curl command in Azure Cloud Bash to get all the groups that are available for your Azure Data Manager for the Energy instance and its data partitions.
117131

@@ -121,7 +135,7 @@ Run the below curl command in Azure Cloud Bash to get all the groups that are av
121135
--header 'Authorization: Bearer <access_token>'
122136
```
123137

124-
## Add user(s) to a OSDU group
138+
## Add user(s) to an OSDU group in a data partition
125139

126140
1. Run the below curl command in Azure Cloud Bash to add the user(s) to the "Users" group using the Entitlement service.
127141
2. The value to be sent for the param **"email"** is the **Object_ID (OID)** of the user and not the user's email.
@@ -164,7 +178,7 @@ Consider an Azure Data Manager for Energy instance named "medstest" with a data
164178
> The app-id is the default OWNER of all the groups.
165179
:::image type="content" source="media/how-to-manage-users/appid.png" alt-text="Screenshot of app-d in Microsoft Entra ID.":::
166180

167-
## Add user(s) to an entitlements group
181+
## Add user(s) to an entitlements group in a data partition
168182

169183
1. Run the below curl command in Azure Cloud Bash to add the user(s) to an entitlement group using the Entitlement service.
170184
2. The value to be sent for the param **"email"** is the **Object_ID (OID)** of the user and not the user's email.
@@ -205,7 +219,7 @@ Consider an Azure Data Manager for Energy instance named "medstest" with a data
205219
}
206220
```
207221

208-
## Get entitlements groups for a given user
222+
## Get entitlements groups for a given user in a data partition
209223

210224
1. Run the below curl command in Azure Cloud Bash to get all the groups associated with the user.
211225

@@ -245,7 +259,7 @@ Consider an Azure Data Manager for Energy instance named "medstest" with a data
245259
}
246260
```
247261

248-
## Delete entitlement groups of a given user
262+
## Delete entitlement groups of a given user in a data partition
249263

250264
1. Run the below curl command in Azure Cloud Bash to delete a given user from a given data partition.
251265
2. As stated above, **DO NOT** delete the OWNER of a group unless you have another OWNER who can manage users in that group.

0 commit comments

Comments
 (0)