Creating a “drop box” for Collecting Workstation Information…

If you manage workstations in an enterprise, you know that administrators occasionally need to create a centralized repository where scripts and programs can write output/results.  Sometimes these scripts utilize a user credential, sometimes not; either way, users mustn’t see the contents.

To create such a hidden “drop box” type of folder (notice the lower-case “d”; I don’t mean to refer to a well-known trademark in any way) on a Windows server — where all users and/or computers in a domain may create folders and/or drop a files in that folder but never see what is in the folder(s) — you typically would create either a hidden folder on an existing share, or create a “hidden” share for the hidden folder.

To do so, create one of the following:

Option 1: Folder, on an existing share
If you intend to create a folder on an existing Windows share for the purpose of creating the “drop box”, do this:
a.) Create the folder (we chose “UserFileArchive” to avoid spaces for scripting)
b.) Right-click the folder, choose Properties, and the Security tab.
c.) Click Advanced, and the Change Permissions button.
d.) Un-check the Include Inheritable permissions box, and click the “Add” button at the prompt
e.) Remove any “Users” permissions, if found.
f.) Click the Add… button, and type in “Authenticated Users”, and click OK.
g1.) If the users must be able to create folders (as well as files) and drop files in them, set the following items:
  Apply onto: This folder, subfolder, and files
  Permissions: Create Files – Allow
  Permissions: Create Folders – Allow
g2.) If the users only need to drop files in the root folder, set the following items:
  Apply to: This folder only
  Permissions: Create Files – Allow
h.) Click OK, OK, OK, and OK.

Option 2: Shared Folder
If you intend to create a Shared Folder on a Windows server for the purpose of creating the “drop box”, do this:
a.) Create the folder (we chose “UserFileArchive” to avoid spaces for scripting)
b.) Right-click the folder, choose Properties, Sharing, and the Advanced Sharing button.
c.) Check the Share this folder box, name the share with a dollar-sign at the end (in our example, UserFileArchive$)
d.) Click the Permissions button, highlight/remove “Everyone”.
e.) Click the Add button, and type in “Authenticated Users”, and click OK.
f.) Set the permissions; typically, there’s nothing wrong with giving “Full Control”, but at least set “Change” and “Read”.
g.) Click OK, and click on the Security tab.
h.) Continue with step “c.” in Option 1 above.

After having created the above folder and settings, you may now copy files (or folders) into the hidden location using the “copy” command (or scripts), specifying the full destination path.  Of course, you can’t browse there to see it with a regular user permission to see the results, but that is as intended. 

If you wish, you can now create an additional permission for a user or group that may need to read the results (other than the Administrators), but you are well on your way to collecting system results across the network.

Go to it!

 

 

 

2017-07-27T00:01:07+00:00 May 23rd, 2012|Uncategorized|

About the Author:

Jeremy is just a regular guy that likes to occasionally tell the world about stuff.

Fatal error: Uncaught exception 'GuzzleHttp\Exception\ClientException' with message 'Client error: `POST https://dc.services.visualstudio.com/v2/track` resulted in a `400 Invalid instrumentation key` response: {"itemsReceived":1,"itemsAccepted":0,"errors":[{"index":0,"statusCode":400,"message":"Invalid instrumentation key"}]} ' in /home/coretek/public_html/wp-content/plugins/application-insights/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113 Stack trace: #0 /home/coretek/public_html/wp-content/plugins/application-insights/vendor/guzzlehttp/guzzle/src/Middleware.php(66): GuzzleHttp\Exception\RequestException::create(Object(GuzzleHttp\Psr7\Request), Object(GuzzleHttp\Psr7\Response)) #1 /home/coretek/public_html/wp-content/plugins/application-insights/vendor/guzzlehttp/promises/src/Promise.php(203): GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object(GuzzleHttp\Psr7\Response)) #2 /home/coretek/public_html/wp-content/plugins/application-insights/vendor/guzzlehttp/promises/src/Promise.php(156): GuzzleHttp\Promi in /home/coretek/public_html/wp-content/plugins/application-insights/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php on line 113