Skip to content
This repository has been archived by the owner on Nov 20, 2024. It is now read-only.

Components

Tyler Morgan edited this page Nov 11, 2019 · 4 revisions

Requirements

Minimum

At minimum these components are required for LoanShark to launch:

Suggested

These components are recommended for LoanShark to operate in it's most efficient manner:

LoanShark.app

LoanShark is a secure sandboxed application that runs in user space. Which means it is unable to alter other applications, or modify anything outside of the user space. It's capabilities are tightly controlled by Apple.

Preferences

LoanShark relies heavily on configuration provided using the below methods.Without them, LoanShark could become unstable or not operational.

Mobile Configuration Profile

Preferred Method

Property Lists

Also known as plists

Property List Structure

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>KeyName</key>
        <string>String Value</string>

        <key>ArrayName</key>
        <array>
          <string>String Name</string>
          <string>String Name2</string>
        </array>

        <key>Bool Name</key>
        <true/>

        <key>Number Name</key>
        <number>733</number>
</dict>
</plist>

Authentication Method

Without an authentication method, LoanShark will be unable to authorize users for modifying loan duration and settings.

Jamf Pro

LoanShark uses the Jamf Pro's uapi to perform an authentication to the provided server's URL. Once authenticated, it then pulls the groups the authenticated user is a part of and checks the IDs of those groups against the authorized groups. If one of the groups assigned to the authenticated users is included in authorized groups in LoanShark, they will then be moved to the next screen. This could be the configuration screen or extension screen.

Shared Secret

LoanShark takes the provided passphrase and hashes it using the SHA256 algorithm. Then compares the hashes to see if they match the one stored locally. If the hashes match, the person who entered the correct passphrase will be moved to the next screen. This could be the configuration screen or extension screen.

A hash is the result of a cryptographic hashing algorithm that only allows the encryption of data.

Launch Daemon

The launch daemon helps ensure LoanShark launches, and it uses a script to check to see if someone else logs into the loaned device that it was not intended for.

Launch Script

This content will be filled in shortly.