NetApp Community Update
This site will enter Read Only mode on July 23 as we prepare to move to a new platform.
You will still be able to view content, but posting and replying will be temporarily disabled.
To learn more, please review the information in this blog post.

Software Development Kit (SDK) and API Discussions

NMSDK file permissions

VIJAYPOTHIREDDY
3,368 Views

i have a  UNIX Qtree and i have some files under the Qtree. How do i change permission of the files using NMSDK ? , i don't see any API to change file permission on the filer.

 

thanks,

Vijay

1 REPLY 1

longariva
2,457 Views

I have a very similar problem while setting UNIX-style permissions via NMSDK on a regular directory/file.

Recently I contacted NetApp support about the issue and they referred me to the community.

So here I am 😉

 

 

 

This is an excerpt from my original support request:

 

In order to automatically manage home directory creation, access rights setting and cleanup of obsolete homes, we use our IdM system to remotely control the filer via the NMSDK.

For a volume with UNIX file permissions it is not possible to set set owner/group for a given file/directory on the filer using the NMSDK (Java bindings).

Also it is not possible to update the UNIX permission bits after file/directory creation.

At the moment it is only possible to set UNIX permission bits on directory creation using the com.netapp.nmsdk.ontap.api.file.FileCreateDirectoryRequest.withPerm() method.

 

This - however - is not enough because the possibility to also set and/or update user and group is missing.

Using com.netapp.nmsdk.ontap.api.filedirectorysecurity.FileDirectorySecuritySetRequest it is only possible to set a NTFS style SecurityDescriptor which is not possible on a UNIX-style volume.

 

Because UNIX-style permissions are rather simple compared with Windows ACLs I would propose to implement the methods "withPerm()" , "withUidNumber()" and "withGidNumber()" directly within the FileDirectorySecuritySetRequest Class in order to allow simple UNIX-style security updates.

 

 

Public