How to enable permissions in SQL Server 2012 FileTable folder share?

后端 未结 4 1479
谎友^
谎友^ 2021-01-12 09:23

After successfully creating a FileTable, I tried viewing the fileshare but my permissions are denied. In Management Studio, right-clicking on FileTable then \"Explore FilteT

4条回答
  •  遥遥无期
    2021-01-12 10:07

    Can you check a few things?

    Can you via Windows Explorer try to browse to each of the following:

    \\YOURCOMPUTERNAME
    
    \\YOURCOMPUTERNAME\[FILESTREAM Share Name]\  e.g MSSQLSERVER
    
    \\YOURCOMPUTERNAME\[FILESTREAM Share Name]\[FILESTREAM Directory Name]
    
    \\YOURCOMPUTERNAME\[FILESTREAM Share Name]\[FILESTREAM Directory Name]\[FILETABLE Table Name]
    

    [FILESTREAM Share Name]

    • this is the name as defined at the Server Insance level when you set FILESTREAM access up
    • to check it, right click on the Server Connection in SSMS and choose Properties
    • then look in Advanced --> FILESTREAM --> FILESTREAM Share Name

    [FILESTREAM Directory Name]

    • this is the name as defined in the database when you set FILESTREAM access up
    • to check it, right click on the Database in SSMS and choose Properties
    • then look in Options --> FILESTREAM --> FILESTREAM Directory Name

    [FILETABLE Table Name]

    • Remember when you name your table it has to conform with Windows Folder naming rules (ie avoid special characters) e.g "TABLE|WEIRDCHARACTER"

    Note(1): I have found that if you give your user only "ALTER" permission on the Filetable Table it will be browseable at the

    \\YOURCOMPUTER\MSSQLSERVER\FILESTREAM_DIRECTORY_NAME\

    level but you wont actually be able to browse the contents of the "directory"

    Note(2): if you only give SELECT, UPDATE, DELETE, INSERT permission to a user on a filetable Table it will be able to access the folder with the fullpath and see the contents and act on them - create new files, modify existing files

    \\YOURCOMPUTER\MSSQLSERVER\FILESTREAM_DIRECTORY_NAME\FILETABLE_NAME\

    but not browse it at the FILESTREAM_DIRECTORY_NAME level - it in essence becomes a "hidden" directory that you must know the entire pathname to find (unless you guess it of course in a brute attack)

提交回复
热议问题