Skip to content

Commit fbe7b94

Browse files
committed
Fixed duplicate content in tabs
1 parent 06f9663 commit fbe7b94

File tree

1 file changed

+3
-217
lines changed

1 file changed

+3
-217
lines changed

src/content/docs/fundamentals/setup/manage-members/user-groups.mdx

Lines changed: 3 additions & 217 deletions
Original file line numberDiff line numberDiff line change
@@ -36,44 +36,7 @@ With your Group created, you can now add a [Permission Policy](/fundamentals/set
3636
2. Specify the scope and permissions you want applied to the members of the group.
3737
3. Select **Create Policy** to apply it to the group. You return to the **Permission policies** for your Group.
3838

39-
</TabItem> <TabItem label="Okta API">
40-
41-
Using the role identifiers from the previous section, you can create a group policy.
42-
43-
`export ADMIN_ROLE='...' # id field from admin or desired role entry from permission_groups API response`
44-
45-
```curl title="Example request"
46-
$ cat <<-PAYLOAD | curl -XPUT -H "Authorization: Bearer $AOT" -H "Content-type: application/json" --data-binary @- https://api.cloudflare.com/client/v4/accounts/$ACCT/iam/user_groups/$PUSHED_GROUP | jq .
47-
{
48-
"policies": [
49-
{
50-
"access": "allow",
51-
"permission_groups": [{"id": "$ADMIN_ROLE"}],
52-
"resource_groups": [{
53-
"scope": {
54-
"key": "com.cloudflare.api.account.$ACCT",
55-
"objects": [{"key":"*"}]
56-
}
57-
}]
58-
}
59-
]
60-
}
61-
PAYLOAD
62-
```
63-
64-
**Reset a policy to an empty state**
65-
66-
If you made a mistake while creating the group policy or need to reset the policy to an empty state, send another PUT request to the group API with an empty policy array to overwrite with your new policy.
67-
68-
```curl
69-
$ cat <<-PAYLOAD | curl -XPUT -H "Authorization: Bearer $AOT" -H "Content-type: application/json" --data-binary @- https://api.cloudflare.com/client/v4/accounts/$ACCT/iam/user_groups/$PUSHED_GROUP | jq .
70-
{
71-
"policies": []
72-
}
73-
PAYLOAD
74-
```
75-
76-
</TabItem> <TabItem label="Microsoft Entra">
39+
</TabItem> <TabItem label="API">
7740

7841
Using the role identifiers from the previous section, you can create a group policy.
7942

@@ -134,7 +97,7 @@ After a user group is created either manually in Cloudflare dashboard or through
13497
4. Choose the scope and role that you want to apply to the policy.
13598
5. Select **Save** to apply the policy.
13699

137-
</TabItem> <TabItem label="Okta API">
100+
</TabItem> <TabItem label="API">
138101

139102
Before you begin, confirm the groups that were created internally or have been pushed to Cloudflare by using the command below.
140103

@@ -274,191 +237,16 @@ $ curl -XGET -H "Authorization: Bearer $DEMO_AOT" https://api.cloudflare.com/cli
274237
These permission groups are from our staging environment and tags will not function in your production deployment.
275238
:::
276239

277-
</TabItem> <TabItem label="Microsoft Entra">
278-
279-
Before you begin, confirm the groups that were created internally or have been pushed to Cloudflare by using the command below.
280-
281-
**1. Get user groups**
282-
283-
```curl title="Example request"
284-
$ curl -X GET -H "Authorization: Bearer $AOT" https://api.cloudflare.com/client/v4/accounts/$ACCT/iam/user_groups | jq .
285-
```
286-
287-
```curl title="Example response"
288-
{
289-
"errors": [],
290-
"messages": [],
291-
"result": [
292-
{
293-
"created_on": "2025-01-24T15:31:36.759979Z",
294-
"id": "f234f49f66df4db8864c5189fe78c87f",
295-
"modified_on": "2025-01-24T15:35:50.151764Z",
296-
"name": "My Cool Demo Group",
297-
"status": "V"
298-
},
299-
{
300-
"created_on": "2025-01-16T20:43:01.019311Z",
301-
"id": "7148c1e4d9f247f5b6dcd3ef20f998f9",
302-
"modified_on": "2025-01-16T20:44:07.627233Z",
303-
"name": "My Cool Demo Group, now with policies!",
304-
"policies": [
305-
{
306-
"access": "allow",
307-
"created_on": "2025-01-16T20:44:07.627233Z",
308-
"id": "8d82cf8c15c64e07a4bee58e00d80bca",
309-
"modified_on": "2025-01-16T20:44:07.627233Z",
310-
"permission_groups": [
311-
{
312-
"created_on": "2023-06-21T18:58:29.907496Z",
313-
"id": "a1a099e3256942259bfde18c688b67d5",
314-
"meta": {
315-
"description": "Grants write access to Page Shield for domain",
316-
"editable": "false",
317-
"label": "domain_page_shield",
318-
"scopes": "com.cloudflare.api.account.zone"
319-
},
320-
"modified_on": "2023-06-21T18:58:29.907496Z",
321-
"name": "Domain Page Shield",
322-
"permissions": ["dev note: snipped for length"],
323-
"status": "V"
324-
}
325-
],
326-
"resource_groups": [
327-
{
328-
"created_on": "2025-01-16T20:44:07.627233Z",
329-
"modified_on": "2025-01-16T20:44:07.627233Z",
330-
"scope": {
331-
"key": "com.cloudflare.api.account.a3324a084cd290080b563ab39c91545a",
332-
"objects": [
333-
{
334-
"key": "*"
335-
}
336-
]
337-
}
338-
}
339-
],
340-
"status": "V"
341-
}
342-
],
343-
"status": "V"
344-
}
345-
],
346-
"result_info": {
347-
"count": 2,
348-
"page": 1,
349-
"per_page": 100,
350-
"total_count": 2,
351-
"total_pages": 1
352-
},
353-
"success": true
354-
}
355-
```
356-
357-
**2. Make a query against the resource ID**
358-
359-
Locate the tag of the group you pushed from the IdP and use it to make a direct query against its resource ID:
360-
361-
`export PUSHED_GROUP='...' # Pull this value from the "id" json field in the group list response`
362-
363-
364-
```curl title="Example request"
365-
$ curl -XGET -H "Authorization: Bearer $AOT" https://api.cloudflare.com/client/v4/accounts/$ACCT/iam/user_groups/$PUSHED_GROUP | jq .
366-
```
367-
368-
The response for this should have the group name that was specified in the identity provider with no attached policies.
369-
370-
******
371-
372-
Before you modify the group's policies, review the available permission groups (roles) on the account by querying its API.
373-
374-
```curl title="Example request"
375-
$ curl -XGET -H "Authorization: Bearer $DEMO_AOT" https://api.cloudflare.com/client/v4/accounts/$ACCT/iam/permission_groups | jq .
376-
```
377-
378-
```curl title="Example response"
379-
{
380-
"result": [
381-
{
382-
"id": "1a0fc8bdeae24387b64d5b8de1ad052a",
383-
"name": "Administrator Read Only",
384-
"status": "V",
385-
"meta": {
386-
"description": "Can access the full account in read-only mode.",
387-
"editable": "false",
388-
"label": "admin_readonly",
389-
"scopes": "com.cloudflare.api.account"
390-
},
391-
"created_on": "2020-07-06T12:19:13.099114Z",
392-
"modified_on": "2020-10-13T11:18:00.208228Z"
393-
},
394-
{
395-
"id": "ce2c69b09baf4ca38223910a8b7e07a9",
396-
"name": "Administrator",
397-
"status": "V",
398-
"meta": {
399-
"description": "Can access the full account, except for membership management and billing.",
400-
"editable": "false",
401-
"label": "admin",
402-
"scopes": "com.cloudflare.api.account"
403-
},
404-
"created_on": "2020-07-06T12:19:13.099114Z",
405-
"modified_on": "2020-10-13T11:18:00.208228Z"
406-
}
407-
],
408-
"success": true,
409-
"errors": [],
410-
"messages": []
411-
}
412-
```
413-
414-
:::note
415-
These permission groups are from our staging environment and tags will not function in your production deployment.
416-
:::
417-
418240
</TabItem> </Tabs>
419241

420242
## Inspect Group Members
421243

422-
To verify the IdP synchronized the group and user members pushed in the SCIM operation, query the group members API.
423-
424-
<Tabs syncKey="dashPlusAPI"> <TabItem label="Okta">
425-
426-
```curl title="Example request"
427-
$ curl -XGET -H "Authorization: Bearer $DEMO_AOT" https://api.cloudflare.com/client/v4/accounts/$ACCT/iam/user_groups/$PUSHED_GROUP/members | jq .
428-
```
429-
430-
```curl title="Example response"
431-
{
432-
"result": [
433-
{
434-
"id": "a4366a09c43a0b0c4606dc5528472bb6",
435-
"email": "[email protected]"
436-
},
437-
{
438-
"id": "0329c17f6c13f5202dc38d2036efb1a9",
439-
"email": "[email protected]"
440-
}
441-
],
442-
"result_info": {
443-
"page": 1,
444-
"per_page": 100,
445-
"total_pages": 1,
446-
"count": 2,
447-
"total_count": 2
448-
},
449-
"success": true,
450-
"errors": [],
451-
"messages": []
452-
}
453-
```
454-
455-
</TabItem> <TabItem label="Microsoft Entra">
244+
To verify the IdP synchronized the group and user members pushed in the SCIM operation, query the Group Members API.
456245

457246
```curl title="Example request"
458247
$ curl -XGET -H "Authorization: Bearer $DEMO_AOT" https://api.cloudflare.com/client/v4/accounts/$ACCT/iam/user_groups/$PUSHED_GROUP/members | jq .
459248
```
460249

461-
462250
```curl title="Example response"
463251
{
464252
"result": [
@@ -483,5 +271,3 @@ $ curl -XGET -H "Authorization: Bearer $DEMO_AOT" https://api.cloudflare.com/cli
483271
"messages": []
484272
}
485273
```
486-
487-
</TabItem> </Tabs>

0 commit comments

Comments
 (0)