# ACLEnforcingMode

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Reference](https://developer.m-files.com/APIs/gRPC-API/Reference/index.md) > [Enums](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ACLEnforcingMode/

ACL enforcing modes.

- **Full name:** `MFiles.ACLEnforcingMode`
- **Proto file:** [`mfiles/enums.proto`](https://developer.m-files.com/APIs/gRPC-API/downloads/proto/mfiles/enums.proto)

<a id="values"></a>

## Values

| Name | Number | Description |
|---|---|---|
| <a id="v-ACLENFORCING_MODE_USE_PREVIOUS"></a>`ACLENFORCING_MODE_USE_PREVIOUS` | 0 | Use the ACL previously stored for the object as a provided ACL (the previous ACL is typically the consolidated ACL (as if it was generated by the UI)). |
| <a id="v-ACLENFORCING_MODE_USE_PROVIDED"></a>`ACLENFORCING_MODE_USE_PROVIDED` | 1 | Use the caller-provided ACL. |
| <a id="v-ACLENFORCING_MODE_RESET_TO_DEFAULT"></a>`ACLENFORCING_MODE_RESET_TO_DEFAULT` | 2 | Use the ACL calculated from the properties as a provided ACL. |
| <a id="v-ACLENFORCING_MODE_DISALLOW_CHANGES"></a>`ACLENFORCING_MODE_DISALLOW_CHANGES` | 3 | Do not touch the object ACL. |

<a id="used-by-methods"></a>

## Used by methods

- [IRPCObjectOperations.SetProperties](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetProperties/index.md): Adds, replaces or removes property values of an object.
- [IRPCObjectOperations.SetPropertiesWithMetadata](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetPropertiesWithMetadata/index.md): Adds, replaces or removes property values of an object, also storing metadata about each value.

<a id="used-in-fields"></a>

## Used in fields

- [`SetPropertiesParams.acl_enforcing_mode`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.SetPropertiesParams/index.md#f-acl_enforcing_mode): Which ACL the server starts from when it updates the permissions; see SetProperties `acl_mode`. `ACLENFORCING_MODE_DISALLOW_CHANGES` is rejected.
- [`SetPropertiesRequest.acl_mode`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetProperties/index.md#request): Which ACL the server starts from when it updates the object's permissions.
- [`SetPropertiesWithMetadataRequest.acl_mode`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetPropertiesWithMetadata/index.md#request): ACL enforcing mode.
