Skip to content

Instantly share code, notes, and snippets.

View infamousjoeg's full-sized avatar
🙊
I'm really good at keeping secrets.

Joe Garcia infamousjoeg

🙊
I'm really good at keeping secrets.
View GitHub Profile
@infamousjoeg
infamousjoeg / delete_gitlab_projects.sh
Created September 29, 2023 16:38
GitLab Delete Projects with Last Activity Before Specific Date
#!/bin/bash
# Set your personal access token here
personalAccessToken="<personal-access-token>"
# Get the list of project IDs for owned projects with last activity before 2020-01-01
project_ids=$(curl --header "PRIVATE-TOKEN: $personalAccessToken" "https://gitlab.com/api/v4/projects?simple=true&per_page=100&owned=true&last_activity_before=2020-01-01T00:00:00Z" | jq -r '.[] | select(.last_activity_at < "2020-01-01T00:00:00Z") | .id')
# Loop through each project ID and delete the project
for project_id in $project_ids; do
@infamousjoeg
infamousjoeg / exportData.ps1
Last active October 17, 2023 13:13
Export Safe, Safe Members, and Accounts from CyberArk Self-Hosted PAM using psPAS & PowerShell
# Check if the psPAS module is already installed
if (-not (Get-Module -ListAvailable -Name psPAS)) {
# If not, install the module
Install-Module -Name psPAS -Repository PSGallery -Force -Scope CurrentUser
# Check if the module was successfully installed before importing
if (-not (Get-Module -ListAvailable -Name psPAS)) {
Write-Output "ERROR: Failed to install the psPAS module. Please install manually from https://pspas.pspete.dev/docs/install."
return
}
@infamousjoeg
infamousjoeg / CyberArk_UpdatePort.ps1
Created September 7, 2023 16:29
Search CyberArk for Port Number and Update to New Port Number in PowerShell
# Global Variables
$baseUrl = "https://cyberark.joegarcia.dev" # CHANGE ME
$authType = "ldap" # CHANGE ME
$portToSearchFor = 3306 # CHANGE ME
$newPortValue = 3307 # CHANGE ME
# Logon Variables
$credentials = Get-Credential
$logonRequestUri = "${baseUrl}/PasswordVault/api/auth/${authType}/logon"
$logoffRequestUri = "${baseUrl}/PasswordVault/api/auth/logoff"
@infamousjoeg
infamousjoeg / AIMCCPClientCert.ps1
Last active January 24, 2024 17:51
CCP GetPassword in PowerShell with Client Certificate
# Set request variables
$baseURL = "https://cyberark.joegarcia.dev"
$appID = "Ansible"
$safe = "D-Win-SvcAccts"
$object = "Operating System-WinDomain-joegarcia.dev-Svc_SSIS"
# Define the certificate thumbprint
$thumbprint = "INSERT_CERTIFICATE_THUMBPRINT_HERE"
# Retrieve the certificate from Current User's Personal certificate store
@infamousjoeg
infamousjoeg / Get-SignedHeaders.ps1
Last active May 15, 2023 16:18
PowerShell AWS STS Signed Headers w/ Conjur's authn-iam
# Please note that this script uses a C# helper class for HMAC-SHA256 calculations.
# This is because PowerShell does not natively support this kind of operations.
# Also, this script assumes that you are calling Get-SignedHeaders with the proper
# parameters to generate your signed headers.
# Create a C# class for HMACSHA256 Helper which is used to compute HMACSHA256 hash
Add-Type -TypeDefinition @"
using System;
using System.Text;
using System.Security.Cryptography;
@infamousjoeg
infamousjoeg / conjur-cloud_ca-chain.pem
Created May 11, 2023 14:53
Conjur Cloud's Public CA Certificate Chain
-----BEGIN CERTIFICATE-----
MIIGaTCCBVGgAwIBAgIMLE46kHnIkjumcKGzMA0GCSqGSIb3DQEBCwUAMFAxCzAJ
BgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMSYwJAYDVQQDEx1H
bG9iYWxTaWduIFJTQSBPViBTU0wgQ0EgMjAxODAeFw0yMzAzMDcxODIxMDNaFw0y
NDA0MDcxODIxMDJaMHQxCzAJBgNVBAYTAklMMRAwDgYDVQQIEwdDZW50cmFsMRQw
EgYDVQQHEwtQZXRhaCBUaWt2YTEfMB0GA1UEChMWQ1lCRVJBUksgU09GVFdBUkUg
TFRELjEcMBoGA1UEAwwTKi5pZC5jeWJlcmFyay5jbG91ZDCCASIwDQYJKoZIhvcN
AQEBBQADggEPADCCAQoCggEBALMsbfmGh5jHr2BvzR5fWvbbdhRgLo8hyHcyjkhy
OeFAGEL/r8dIyUyKl0iqbdC4/aSxytjdUqn4pGTb5wpMUfS2qdRy+531OPLi7Ls4
hKELheugWNCY99IDGxdwxTAm/EtnK3PX6KEzCQukGQVg/r4H41pY0YSbepAwcZRj
@infamousjoeg
infamousjoeg / GrantHostID.yaml
Created May 5, 2023 17:17
Grant OpenShift App authz to PAM Vault secrets and push to K8s Secrets
# Load into root branch
- !grant
role: !group SyncVault/LOB_POC/SafeName/delegation/consumers
member: !host data/cd/kubernetes/dev-team-1/applications/k8s-secrets-app1
@infamousjoeg
infamousjoeg / Get-CPDetails.ps1
Created April 24, 2023 18:50
Get Credential Provider Details from System Health via PVWA REST API
# Get User Input
$pvwaURL = $(Read-Host "PVWA Base URL (eg. https://pvwa.example.com)").TrimEnd("/")
do {
$authType = Read-Host "Authentication Type [cyberark], ldap, radius"
if ($authType -eq "") { $authType = "cyberark" }
else { $authType = $authType.ToLower() }
} until ($authType -eq "cyberark" -or $authType -eq "ldap" -or $authType -eq "radius")
$credentials = Get-Credential
# Logon to PVWA REST API
@infamousjoeg
infamousjoeg / 1-install_module.sh
Created March 28, 2023 14:45
Retrieve password from Central Credential Provider in Puppet Manifest and store in Hiera
puppet module install dwerder-hiera_set
@infamousjoeg
infamousjoeg / BradleyMastersCallOfDuty.md
Created March 18, 2023 03:04
"Bradley masters Call of Duty" by ChatGPT (GPT-4 Model)

Bradley Masters Call of Duty

By: ChatGPT
Using the GPT-4 Model
2023-03-17

In the land of Gamerton, where controllers do play, Lived a young lad named Bradley, who practiced all day. He wanted to be the best at the game, The kind of player who'd rise up in fame.