Snagit and Scrolling Capture

roiegat
Contributor III

So we recently deployed Snagit to our users per their request. It's been a couple months now and things are going good, until today. I got a request to enable the Scrolling capture. Because this seems like a potential security risk, I'm working with our security team to check it out. But the other issue is our users don't have admin access, so even if we did allow it - we need a way to activate it via script.

So I started by using my admin credentials and activating it on my laptop. I know the accessbilty stuff goes into the TCC.db. So I saw that it added two things into the accesbilty table when I did it manually:

kTCCServiceAccessibility|com.TechSmith.Snagit|0|1|1|
kTCCServiceAccessibility|com.techsmith.snagit.capturehelper|0|1|1|

So I wrote a script that pretty much does that, but got into issue. Here's the quick script:

#!/bin/sh

sudo sqlite3 /Library/Application Support/com.apple.TCC/TCC.db "INSERT or REPLACE INTO access VALUES('kTCCServiceAccessibility','com.TechSmith.Snagit',0,1,1,NULL)"


sudo sqlite3 /Library/Application Support/com.apple.TCC/TCC.db "INSERT or REPLACE INTO access VALUES('kTCCServiceAccessibility','com.techsmith.snagit.capturehelper’,0,1,1,NULL)"

sudo sqlite3 /Library/Application Support/com.apple.TCC/TCC.db "select * from "access""

The last command just lists all the access so I can check it was done correctly. The reason I put that there is because the com.techsmith.snagit.capturehelper doesn't appear to work on a fresh machine. When the script is run on a machine with a fresh install of snagit it gets:

ERROR: unrecognized token "'com.techsmith.snagit.capturehelper',0,1,1,NULL)"

So has anyone been able to package it with the ability to enable scrolling capture?

1 ACCEPTED SOLUTION

bvrooman
Valued Contributor

I drop a copy of tccutil.py on our managed Macs, and then just run /path/to/tccutil.py -i com.TechSmith.Snagit and /path/to/tccutil.py -i com.techsmith.snagit.capturehelper after installing Snagit.

View solution in original post

4 REPLIES 4

bvrooman
Valued Contributor

I drop a copy of tccutil.py on our managed Macs, and then just run /path/to/tccutil.py -i com.TechSmith.Snagit and /path/to/tccutil.py -i com.techsmith.snagit.capturehelper after installing Snagit.

roiegat
Contributor III

Will check it out - thanks!

UPDATE: worked like a charm.

cindySingh
New Contributor III

Hi @bvrooman does it still work for you on 10.13?
I get the following error:

Traceback (most recent call last):
  File "/usr/local/bin/tccutil.py", line 294, in <module>
    main()
  File "/usr/local/bin/tccutil.py", line 281, in main
    insert_client(item)
  File "/usr/local/bin/tccutil.py", line 212, in insert_client
    c.execute("INSERT or REPLACE INTO access VALUES('kTCCServiceAccessibility','%s',%s,1,1,NULL,NULL)" % (client, client_type))
***sqlite3.OperationalError: attempt to write a readonly database
*
**

bvrooman
Valued Contributor

@cindySingh No, Apple moved TCC.db under SIP with macOS Sierra, so that carries through to High Sierra. Unfortunately, I haven't found a non-GUI way to accomplish the task in a current OS.