Configuration Manager Web Frontend

Update (09/15/2016): Version 2.0 has been released! Please check this post for details: Configuration Manager Web Frontend Update 2.0

Back in SCCM 2007 and SMS 2003 there was a popular community tool by Ron Crumbaker called web remote tools that would allow help desk staff to easily deploy software and access tools for a computer without having access to the console. With the new appmodel and other changes in SCCM 2012 these tools no longer work. Since Ron’s project has been stale for very long time I decided to create a modern replacement.

Configuration Manager Web Frontend (CMFrontend) is a HTML5 web application designed to provide quick access to information, tools, and deployments without the use of the Configuration Manager console.

CMFront_1 CMFront_2

Features

  • Deploy both Applications and Packages
  • Quick computer information
  • Find all system that a user uses
  • Remote tools
  • Role based administration support
  • Realtime deployment status
  • OSD API

Download & installation

CMFrontend can be downloaded here:

The installation is mostly automated but there are a few prerequisites that must be in place. Check the readme inside the zip file for more details.

Note: CMFrontend requires a new server 2012 VM to be setup.

How it works

CMFrontend uses a windows service and an asp.net mvc4 website to connect to the ConfigMgr management point and sql server in order to perform its actions. Most data is cached via an SQL database so that the service does not create excessive load on the management point.

Application deployments are performed by a specified service account that automatically creates a collection and a deployment for each program deployed per RBAC group.

CMFront_4

The tools are launched from the browser using a custom protocol. I have included the source code for this launcher for any security concerns / repackaging & resigning.

60 thoughts on “Configuration Manager Web Frontend

  1. Snoop WW

    getting an error with the r2 install about starting the configman frontend background service, followed by installation successful.
    Can log in, but nothing loads, clicking admin gets a sql error.
    Service error is install.ps1: 473 char:1

    Reply
  2. Snoop WW

    database connection error it seems; reading the logs. 1 it seems to be trying on named pipes; that was not enabled although is now but has the same .net error. let me know if u want the log.

    Reply
  3. Jesse Staugaard

    Hey Scott, Nice work, great foundation. Having a bit of a problem where inventory data does not show up. Software pushing / Reporting all work fine. Any ideas on where I should start troubleshooting. IIS and CmWFE logs did not seem to indicate any issues. Thanks.

    Jesse

    Reply
  4. wayne

    Scott. I was looking for something like this as well. I am having the same issue with inventory not showing up. Software push/Reporting shows up fine.
    What was the solution above? did I miss something?

    Reply
    1. skeiffer Post author

      Goto the admin page and then click on the error log link at the bottom. That should shed some light on what is happening. Most likely there is a sql permissions issue or you are missing a view from the sccm sql database.

      Reply
  5. wayne

    I’m thinking it’s a database size issue though I don’t know how to resolve it other than perhaps installing SQL?
    Errors:
    The incoming request has too many parameters. The server supports a maximum of 2100 parameters. Reduce the number of parameters and resend the request.
    Sql Violation of PRIMARY KEY constraint ‘PK_dbo.CollectionComputers’. Cannot insert duplicate key in object ‘dbo.CollectionComputers’. The duplicate key value is (SMS00001, 16779510). The statement has been terminated

    Reply
  6. wayne

    Scott. The update fixed my issue in every way! Thank you so very much for your help and your establishment of this web console!

    Reply
      1. skeiffer Post author

        The applet is not working with the newest verison of java (7u51). They changed the way applets have to be packaged and signed and I have not fixed it yet.

  7. wayne

    Scott: It works ok in Chrome, or in older versions of IE. I was running in IE 11 and having issues. Once I allowed it as trusted in the javacpl it was fine.

    Reply
  8. troy

    Hi
    When I first log on I get a page with the word ‘starting’
    Underneath this page I see a message “deployment already exist…”

    can you help with this?

    Reply
  9. troy

    Hi
    When I first log on I get a page with the word ‘starting’
    Underneath this page I see a message “deployment already exist or an error has occured…”

    Reply
  10. troy

    Ok I managed to overcome the above error by entering the website FQDN.
    now It seems that java isn’t working.

    Webpage error details

    User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729)
    Timestamp: Sun, 2 Feb 2014 12:34:38 UTC

    Message: Unable to get property ‘length’ of undefined or null reference
    Line: 2848
    Char: 25
    Code: 0
    URI: https://sccmwebsite.contoso.com/Scripts/jquery.dynatree-1.2.2.js

    Message: Unable to get property ‘length’ of undefined or null reference
    Line: 2848
    Char: 25
    Code: 0
    URI: https://sccmwebsite.contoso.com/Scripts/jquery.dynatree-1.2.2.js

    Reply
    1. skeiffer Post author

      Take a look at the two log files in c:\programdata\cmfrontend as well as the error log in the admin page. Most likely there is a permissions error somewhere.

      Reply
  11. Max

    Hello Scott
    Maybe is a silly question and im missing something obvious but installation is ok, solved the permissions issues within DB but after logon I cant see collections of computers or apps at all.
    Would appreciate your input. Thanks!

    Reply
  12. Evans Conforti

    I am having issues getting the site to load, all I see is “Starting” with IE and “Select a computer” with Chrome.
    During the install the only error I get is:
    Start-Service : Service ‘ConfigMgr FrontEnd Background Tasks (CMFrontEndBkg)’ cannot be started due to the following
    error: Cannot start service CMFrontEndBkg on computer ‘.’.
    At C:\Users\econforti\Downloads\CMFrontEndInstaller\install.ps1:473 char:1
    + Start-Service “CMFrontEndBkg” | Out-Null
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service],
    ServiceCommandException
    + FullyQualifiedErrorId : CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceCommand
    When I check the CMFrontEndBkg service, it is not started and states the it did not start due to a logon failure (It doesn’t matter what account I use). When I open the service and re-enter the PW is says the “Account has been granted the Log on As A service right” and I am then able to start the service.
    I tried to open the site on Windows 8.1 using IE11 and Chrome 35.0.1916.114 with JRE 1.7.51. Also with Windows 7 using IE9 and Chrome 35.0.1916.114 with JRE 1.6.27. When I logon with Chrome I am able to go to the Admin tab and check the error logs and see:
    No errors found.
    Any thoughts on this, or debugging options?

    Reply
    1. skeiffer Post author

      Check the log files in c:\programdata\cmfrontend. Also in IIS make sure the DefaultAppPool application pool’s identity is set to the same username as the cmfrontendbkg service.

      Reply
      1. Evans Conforti

        Sorry for the late reply, I thought I posted back on the 6th. Any way, I checked the logs nothing exciting:
        FrontendBackgroundService.log (The following message every hour or so)
        [06/17/14 3:59:33] [DeploymentStartupThread] Cleaning up deployments.
        w3wp.log
        [06/17/14 4:42:50] Website is starting.

        I checked the DefaultAppPool application pool’s identity and it is the same account as the cmfrontendbkg service. When I look at the DB and run a query:
        SELECT TOP 1000 [Id]
        ,[Name]
        ,[LastDataUpdate]
        FROM [CMFrontEnd].[dbo].[Computers]
        or
        SELECT TOP 1000 [Collection_Id]
        ,[Computer_Id]
        FROM [CMFrontEnd].[dbo].[CollectionComputers]
        I get no results, so I am guessing its not pulling information from the SCCM DB?

      2. skeiffer Post author

        On the admin page are there any RBAC groups listed? There should either be errors or you do not have any groups added into sccm and probably just user accounts. The server only looks for ad groups. Add an AD group and to the sccm console and it should show up on the website.

    2. Evans Conforti

      Okay, I have a few questions/Issues. First is that the site is not working with IE (Have it in Trusted Sites) but works fine with Chrome. Any thoughts? The next is the Tools section nothing is launching. The last is a question, can I change the default link to reports? It uses the ConfigMgr_SITECODE in the URL can this be changed to SCCM+Default+Reports?

      Reply
      1. skeiffer Post author

        The site is only tested on IE10 and up, firefox, and chrome. IE9 may be iffy as the site uses mostly modern html 5 stuff. May sure enterprise mode and or compatibility mode is off on this site.

        The tool section is run by a java applet. To get this to work after 7u51 or so you need to set security to medium and add the site to the site list.

        To edit the reports list open C:\inetpub\wwwroot\scripts\frontend.js goto line 672 and you should see where the urls are defined. You can remove and add as many as you like. Just use the existing ones as examples. Also if you need to edit more of the URL take a look at line 63.

  13. charitha

    Hi, I have installed this on the sccm server and after the installation done IIS is not working. What can be the issue. Please advice thanks.

    Reply
  14. Arturas

    Hi Skeiffer,

    I have one issue. The error in the log is saying it is trying to connect to CM_{site name} DB. but my Configuration manager DB is called ConfigMgr_{site name} . How could I change this to point to correct database?

    Thanks in advance,

    Arturas

    Reply
      1. Arturas

        Thanks, found it 🙂 by the way, have you heard about issues with IE? should site be included to local or trusted sites? pages just freezes. I resolve the problem changing document mode to IE10, it is ie7 by default, is there a tag somewhere that sets IE document mode?

      2. skeiffer Post author

        The site is not setting the document mode. Perhaps you are setting the document mode via GPO or the IE installer? The site will work in IE10+, firefox, and chrome with no issues so you can also use another browser as well.

  15. Arturas

    Hi Skeiffer,

    I’m trying to add some functionality to this frontaendpage and got stuck. I want to make a run-able JAR file with Eclipse but I need A launch configuration for that. And to have Launch configuration it is required to have main class. Could you help me out?

    Thanks,

    Arturas

    Reply
  16. Arturas

    Hi Again,

    I’m still trying to compile your source code, but no luck. Maybe you have some documentation how to do that correctly? I tried text-pad and eclipse for that. I get “undefined is not a function” error when I click on any of tool section.

    Reply
  17. Evans

    Right now I have one AD group tied to the All Systems viewable collections. Is there a way to get the AD Group to show both Systems and Users in the WFE?

    Reply
      1. Evans

        I probably worded my question incorrect, but I believe I figured it out. In the Admin section you have to hold CTRL to select both All Systems and All Users and User Groups. Sorry Noob question.

  18. Jake

    Hello

    I’m also having the same issue as Arturas. In my case the database name is just SUSDB. I do not have a prefix. Is there a config change I can make?

    Thank you

    Reply
    1. Jake

      My message is I’m getting is
      Cannot open database “CM_JBA” requested by the login. The login failed. Login failed for user ‘WINDPOINT\svc-sccminstall

      The name of the DB is SUSDB.

      Reply
  19. Jake

    Yes that is the name our DBA gave me. When I did the CMFrontEnd install I had to edit the PS script to use that name for the $ConfigMgrDatabase variable.

    Thank you again for your help.

    Reply
  20. Cory Freeman

    Having an issue trying to fully run the install.ps1

    Keep Getting Service Account not found in ConfigMgr SQL Server, setting up logins..

    Reply
    1. skeiffer Post author

      This means the service account you provided at the start of the script was not found or does not have permissions on the sccm sql database. When this happens It trys to add the login but if that fails it means the user you are running the script as also does not have full persissions on the database.

      Reply
  21. TB

    Great tool! Search by computer name was awesome! I’m wondering if I can do the same type of search by users or groups. I see that there is a tab but nothing populates in this list. Is this possible?

    Reply
      1. TLP

        TB is probably referring to the same thing I’m seeing in our new CMFrontend setup. We just installed this yesterday and we’re looking at it. The Frontend Service Account role is configured to have visibility to All Systems (under Device Collections) and All Users and Groups (under User Collections). So the CMFrontend web interface shows in the left-most pane an All Systems node that is expandable to show computers and an All Users and Groups node which doesn’t expand or show anything. Again, I’m assuming this is the same as what TB is saying. That being said, just to confirm you’re saying the current CMFrontend doesn’t support viewing and managing Users only Devices. Correct? Thanks.

      2. skeiffer Post author

        This is correct, only devices are supported at the moment. You should be able to hide the users and groups node by disabling it on the admin page.

  22. Arturas

    Hi skeiffer,

    is there a way to have data renewed from SCCM database more often? In documentation it says every 18-24 hours. I would like this data to be renewes more often for cases when new, just installed PC is not visible in webfrontend but exsists in SCCM.

    Regards,

    Arturas

    Reply
  23. Jake

    Hello skeiffer,

    I setup the FrontEnd page and I see PCs. When I use the Software – Installed Software or Software – Inventoried Files features under tools and reports I receive an error. Reporting Services Error For more information about this error navigate to the report server on the local server machine, or enable remote errors. I’m not seeing any errors on the remote report server. In our install the Reporting Services Roll is installed on a separate server and not on our Primary Site server or database server. Does the Reporting Services Roll need to be installed on the primary or database server for this feature to work?

    Thank you

    Reply
  24. Christopher

    Hi Skeiffer – The Installation went totally fine for me. I see Admin Groups showing up in the ‘Admin’ Section, however when I click the ‘Computers’ tab none of them are showing up @ all? Any ideas…

    Reply
    1. skeiffer Post author

      If you checked the enabled box and they do not show up check the logs in the following locations c:\programdata\cmfrontend and by clicking the link at the bottom of the admin page.

      Reply

Leave a reply to Arturas Cancel reply