Skip to content

Instantly share code, notes, and snippets.

@brysontyrrell
brysontyrrell / create_jss_account.py
Last active November 21, 2023 23:00
Create a JSS admin account
import getpass
import sys
import xml.etree.ElementTree as Et
import requests
try:
NEW_USERNAME = sys.argv[1]
except IndexError:
print('No username provided!')
@brysontyrrell
brysontyrrell / cipher.py
Last active April 17, 2023 17:52
AES256 encryption using pyca/cryptography
import base64
import os
from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
from cryptography.hazmat.backends import default_backend
class AESCipher(object):
block_size = algorithms.AES.block_size / 8
@brysontyrrell
brysontyrrell / jamfpro-template.yaml
Last active March 26, 2022 21:52
Deploy Jamf Pro using Fargate and Aurora Serverless (non production)
AWSTemplateFormatVersion: 2010-09-09
Parameters:
AvailabilityZone1:
Type: String
Default: a
AvailabilityZone2:
Type: String
name: Automated Unit Tests
on: [pull_request]
jobs:
automated-unit-tests:
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
name: Publish Package
on:
push:
branches:
- main
jobs:
publish:
AWSTemplateFormatVersion: 2010-09-09
# See https://github.com/aws-actions/configure-aws-credentials#sample-iam-role-cloudformation-template
Parameters:
GitHubOrg:
Type: String
RepositoryName:
Type: String
AWSTemplateFormatVersion: 2010-09-09
# See https://github.com/aws-actions/configure-aws-credentials#sample-iam-role-cloudformation-template
Parameters:
GitHubOrg:
Type: String
RepositoryName:
Type: String
AWSTemplateFormatVersion: 2010-09-09
# This can only be deployed once per account.
Resources:
GitHubOIDC:
Type: AWS::IAM::OIDCProvider
Properties:
Url: https://token.actions.githubusercontent.com
ClientIdList:
AWSTemplateFormatVersion: 2010-09-09
Parameters:
DomainName:
Type: String
AllowedPattern: "^[a-z][a-z0-9-]{0,48}[a-z0-9]$"
RepositoryName:
Type: String
@brysontyrrell
brysontyrrell / JamfUAPIAuthToken.py
Created October 19, 2016 17:52
Generate a token for the Jamf Universal API (UAPI) that will auto-refresh as needed.
import datetime
import logging
import requests
import urlparse
class JamfUAPIAuthToken(object):
def __init__(self, jamf_url, username, password):
"""
:param jamf_url: Jamf Pro URL
:type jamf_url: str