/scalemgmt/v3/authorization/domains/{name}: PATCH
Updates the domain for the specified name.
Availability
Available on all IBM Storage Scale editions.
Description
The PATCH authorization/domains/{name} request updates the domain for the specified name. You can overwrite the domain with the specified name for provided permissions, memberships, resource groups, and attributes. To run this request, you must have the RBAC permission for the update action on the /scalemgmt/v3/authorization/domains/{name} resource.
The following fields cannot be changed in any domain:
- ID
- If within the StorageScaleDomain:
- IBM Storage Scale permissions: SecurityAdmin and administrator.
- IBM Storage Scale resource groups: allEndpoints.
Request URL
https://<IP address or host name of API server>:<port>/scalemgmt/v3/authorization/domains/{name}
where- {name}
- Specifies the name of the domain.
Request headers
Accept: application/json
Parameters
The following parameters can be used in the request URL to customize the
request:
Parameter name | Description and applicable keywords | Required/optional |
---|---|---|
name | The name of the RBAC domain. | Optional. |
X-StorageScaleDomain | The domain to be authorized against for the request. The default value is StorageScaleDomain. | Optional. |
Request data
No request data.
Response data
- 200: A successful response.
{ "attributes": {}, "id": 0, "memberships": { "additionalProp1": { "name": "string", "roles": [ "string" ] }, "additionalProp2": { "name": "string", "roles": [ "string" ] }, "additionalProp3": { "name": "string", "roles": [ "string" ] } }, "name": "string", "permissions": { "additionalProp1": { "policies": [ { "action": "string", "effect": "string", "resource": "string" } ], "role": "string" }, "additionalProp2": { "policies": [ { "action": "string", "effect": "string", "resource": "string" } ], "role": "string" }, "additionalProp3": { "policies": [ { "action": "string", "effect": "string", "resource": "string" } ], "role": "string" } }, "resource_groups": { "additionalProp1": { "name": "string", "resources": [ "string" ] }, "additionalProp2": { "name": "string", "resources": [ "string" ] }, "additionalProp3": { "name": "string", "resources": [ "string" ] } } }
- default: An unexpected error response.
{ "code": 0, "details": [ { "@type": "string", "additionalProp1": "string", "additionalProp2": "string", "additionalProp3": "string" } ], "message": "string" }
Examples
The following example updates the domain1domain:
Request data:
curl -X 'PATCH' \
'https://localhost:46443/scalemgmt/v3/authorization/domains/domain1' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"name": "domain1",
"permissions": {
"NSDOperationRole": {
"policies": [
{
"action": "create",
"resource": "nsd",
"effect": "allow"
},
{
"action": "delete",
"resource": "nsd",
"effect": "allow"
},
{
"action": "get",
"resource": "nsd",
"effect": "allow"
}
]
},
"FS1FilesetRole": {
"policies": [
{
"action": "create",
"resource": "filesets",
"effect": "allow"
},
{
"action": "delete",
"resource": "filesets",
"effect": "allow"
},
{
"action": "link",
"resource": "filesets",
"effect": "allow"
},
{
"action": "unlink",
"resource": "filesets",
"effect": "allow"
},
{
"action": "get",
"resource": "filesets",
"effect": "allow"
}
]
}
},
"memberships": {
"user1": {
"roles": [
"NSDOperationRole"
]
},
"user2": {
"roles": [
"FS1FilesetRole"
]
},
"user3": {
"roles": [
"FS1Filesystem"
]
}
},
"resource_groups": {
"nsd": {
"resources": [
"/scalemgmt/v1alpha1/nsds",
"/scalemgmt/v1alpha1/nsds/*",
"/scalemgmt/v1alpha1/operations",
"/scalemgmt/v1alpha1/operations/*"
]
},
"filesets": {
"resources": [
"/scalemgmt/v1alpha1/filesystems/fs1/filesets",
"/scalemgmt/v1alpha1/filesystems/fs1/filesets/*"
]
},
"filesystem_fs1": {
"resources": [
"/scalemgmt/v1alpha1/filesystems",
"/scalemgmt/v1alpha1/filesystems/*"
]
}
}
}' -n
Response data: {
"id": 2110805903,
"name": "domain1",
"permissions": {
"FS1FilesetRole": {
"role": "",
"policies": [
{
"resource": "filesets",
"action": "create",
"effect": "allow"
},
{
"resource": "filesets",
"action": "delete",
"effect": "allow"
},
{
"resource": "filesets",
"action": "link",
"effect": "allow"
},
{
"resource": "filesets",
"action": "unlink",
"effect": "allow"
},
{
"resource": "filesets",
"action": "get",
"effect": "allow"
}
]
},
"NSDOperationRole": {
"role": "",
"policies": [
{
"resource": "nsd",
"action": "create",
"effect": "allow"
},
{
"resource": "nsd",
"action": "delete",
"effect": "allow"
},
{
"resource": "nsd",
"action": "get",
"effect": "allow"
}
]
}
},
"memberships": {
"user1": {
"name": "",
"roles": [
"NSDOperationRole"
]
},
"user2": {
"name": "",
"roles": [
"FS1FilesetRole"
]
},
"user3": {
"name": "",
"roles": [
"FS1Filesystem"
]
}
},
"resource_groups": {
"filesets": {
"name": "",
"resources": [
"/scalemgmt/v1alpha1/filesystems/fs1/filesets",
"/scalemgmt/v1alpha1/filesystems/fs1/filesets/*"
]
},
"filesystem_fs1": {
"name": "",
"resources": [
"/scalemgmt/v1alpha1/filesystems",
"/scalemgmt/v1alpha1/filesystems/*"
]
},
"nsd": {
"name": "",
"resources": [
"/scalemgmt/v1alpha1/nsds",
"/scalemgmt/v1alpha1/nsds/*",
"/scalemgmt/v1alpha1/operations",
"/scalemgmt/v1alpha1/operations/*"
]
}
},
"attributes": null
}