Things are looking promising, I did some experimenting.
Win32::FileSecurity::Get("\\\\computer\\share", \%sph); gives you a hash with the keys being users and/or groups and the values a bitmask. You can do the Get on a file, a directory or a share. For example, it could give the key DOMAIN\GROUP with the value 2032127, the bitmask being the permissions listed in CONSTANTS in the documentation for Win32::FileSecurity (DELETE, READ, FULL etc). Maybe it will only be a matter of using EnumerateRights and MakeMask.
The testing done in ActivePerl 5.8.0 Build 805, Win32::FileSecurity version 1.03 ALPHA 97-12-14.