A non-transitory computer readable medium embodying programmed instructions which, when executed by a processor, are operable for performing a method in a SCSI Enclosure Services (SES) device server, the method comprising:
- receiving, at a frontend interface of a SCSI Enclosure Services (SES) device server, SES commands generated by Small Computer System Interface (SCSI) devices;
- determining, at the SES device server, whether SCSI initiators that generated received SES commands are authorized devices;
- performing an SES command in response to determining that a SCSI initiator that generated the SES command is an authorized device;
- rejecting an SES command in response to determining that a SCSI initiator that generated the SES command is not an authorized device;
- and
- maintaining a security table that correlates an address of each SCSI initiator with one of multiple permission levels, where each permission level enables access by a SCSI initiator to a different range of SES commands.