felsokning / Tomte

A combination of Windows PowerShell, WCF Client, Windows Service, WCF Service, and Windows Workflow Foundation (a.k.a.: Code Activities) to automate actions on remote windows machines.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tomte

Overview

Tomte is a combination of Windows PowerShell, WCF Client, Windows Service, WCF Service, and Windows Workflow Foundation (a.k.a.: Code Activities) to automate actions on remote windows machines.

Name/Meaning

Tomte is named after the nisse/tomte of Scaninavian folklore and the general idea is much the same: If Tomte is treated well, it will aid in the chores and work.

How It Works

Tomte exposes Windows Workflows via a WCF Service, which is wrapped by a Windows Service. The WCF Service is called by PowerShell commands, which wrap the WCF client. SQL Persistence is set-up in Tomte, so that all you have to do is stand-up a SQL server, modify your code to point to the SQL server, and it will take care of the rest. Adding new Activities to Tomte requires very little overhead, requiring just the PowerShell command to be written and the Activity to be added. Deploy the newly modified Windows Service and import the newly modified snap-in and that's it!

PowerShell Commands and Activities

The bulk of Tomte's work is derived from Activities and PowerShell Commands. The PowerShell Command wraps the WCF Client call to the WCF Service hosted in the Windows Service. The Activity is what is invoked, when the activity called upon is found in the relevant dictionary

What About Security?

Security is abstracted through the Windows Service/WCF layer, as all requests passing through AuthN/AuthZ. This makes it ideal to set-up in a either a work-group or domain setting, as no authentication schemes need to be manually configured or changed for Tomte to work.

Screenshots

DemonstrationofPowerShellCommands

SqlQueryResults

About

A combination of Windows PowerShell, WCF Client, Windows Service, WCF Service, and Windows Workflow Foundation (a.k.a.: Code Activities) to automate actions on remote windows machines.

License:Mozilla Public License 2.0


Languages

Language:C# 100.0%