This API is used to add a file system access rule.
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
share_id |
Yes |
String |
Specifies the ID of the shared file system. |
project_id |
Yes |
String |
Specifies the project ID of the operator. |
vpc_ip_base_acl |
No |
String |
Specifies the identifier used with IP address-based authorization. Currently, only enable is available, which indicates that an access rule used with IP address-based authorization will be created. NOTICE:
To ensure compatibility, if this parameter is left blank or set to a value other than enable, you can still use this API to create an access rule used with IP address-based authorization. However, this method of creation has been discarded and will not be maintained in the future. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
os-allow_access |
Yes |
Object |
Specifies the os-allow_access objects. |
If the API version ranges from 1.0 to 2.6, the top-layer parameters of the request body in the JSON format use prefix os-. If the API version is later than 2.6, prefix os- must be removed.
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
access_level |
No |
String |
Specifies the access level of the file system. Possible values are ro (read-only) and rw (read-write). The default value is rw (read-write). |
access_type |
Yes |
String |
Specifies the storage access method.
Note
|
access_to |
Yes |
String |
Specifies the value that defines the access rule. The value varies with the scenario: If access_type is set to user, specify AK for this parameter. If access_type is set to cert:
For a multi-protocol file system, specify the value in the format of #protocol type#access method#VPC ID#IP address#priority#user permission, for example, #NFS#IP#07207b50-61b4-4e40-b272-e5433105c2d0#1.1.1.1#1#no_all_squash,no_root_squash. NOTE:
Description of and restrictions on the VPC ID, IP address, priority, and user permission:
NOTICE:
|
POST /v2/{project_id}/shares/{share_id}/action?vpc_ip_base_acl=enable
NFS file system:
{ "allow_access": { "access_to": "0560a527-0e77-40a6-aa3b-110beecad368#127.0.0.1#1#all_squash,root_squash", "access_type": "cert", "access_level": "rw" } }
When creating the share access rule for an IP address-based authorization scenario.
1. The X-Openstack-Manila-Api-Version parameter must be specified for the request header, and the value of X-Openstack-Manila-Api-Version must be from 2.28 to 2.42.
2. The vpc_ip_base_acl parameter must be added in the request URL and the value of vpc_ip_base_acl must be set to enable. To ensure compatibility, if this parameter is left blank or set to a value other than enable, you can still use this API to create an access rule used with IP address-based authorization. However, this method of creation has been discarded and will not be maintained in the future.
Parameter |
Type |
Description |
---|---|---|
access |
Object |
Specifies the access objects. If the access rule is not updated, this value is null. |
Parameter |
Type |
Description |
---|---|---|
share_id |
String |
Specifies the ID of the shared file system to which the access rule is added. |
access_type |
String |
Specifies the type of the access rule. |
access_to |
String |
Specifies the object that the backend grants or denies access. |
access_level |
String |
Specifies the level of the access rule. |
id |
String |
Specifies the ID of the access rule. |
state |
String |
Specifies the status of the access rule. If the API version is earlier than 2.28, the status of the access rule is new, active, or error. In versions from 2.28 to 2.42, the status of the access rule is queued_to_apply, applying, active, error, queued_to_deny, or denying. |
access_key |
String |
Specifies the access credential of the access rule. This parameter exists only when the value of X-Openstack-Manila-Api-Version in the request header is from 2.21 to 2.42. |
created_at |
String |
Specifies the time when the access rule was created. This parameter exists only when the value of X-Openstack-Manila-Api-Version in the request header is greater than or equal to 2.33. |
updated_at |
String |
Specifies the time when the access rule was updated. This parameter exists only when the value of X-Openstack-Manila-Api-Version in the request header is greater than or equal to 2.33. |
{ "access":{ "access_key":null, "share_id":"7ec1115f-518b-40ff-a998-5599ce2da332", "access_type":"cert", "access_to":"0560a527-0e77-40a6-aa3b-110beecad368#0.0.0.0/0#1#all_squash,root_squash", "access_level":"rw", "state":"queued_to_apply", "id":"24615391-d58d-4a74-ac5a-520233c9c396", "created_at": "2017-07-07T03:15:06.858662", "updated_at": "2018-07-07T03:15:06.858662" } }
Status Code |
Description |
---|---|
400 Bad Request |
The server failed to process the request. |
401 Unauthorized |
You must enter a username and the password to access the requested page. |
403 Forbidden |
Access to the requested page is forbidden. |
404 Not Found |
The requested page was not found. |
405 Method Not Allowed |
You are not allowed to use the method specified in the request. |
406 Not Acceptable |
The response generated by the server could not be accepted by the client. |
407 Proxy Authentication Required |
You must use the proxy server for authentication. Then the request can be processed. |
408 Request Timeout |
The request timed out. |
409 Conflict |
The request could not be processed due to a conflict. |
500 Internal Server Error |
Failed to complete the request because of an internal service error. |
501 Not Implemented |
Failed to complete the request because the server does not support the requested function. |
502 Bad Gateway |
Failed to complete the request because the request is invalid. |
503 Service Unavailable |
Failed to complete the request because the service is unavailable. |
504 Gateway Timeout |
A gateway timeout error occurred. |