Verwenden Sie dies, wenn
Discover over-privileged OAuth grants, stale app access, and shadow AI tool sprawl across Google Workspace, Microsoft 365, and GitHub. Runs entirely inside your tenant boundary.
Discover over-privileged OAuth grants, stale app access, and shadow AI tool sprawl across Google Workspace, Microsoft 365, and GitHub. Runs entirely inside your tenant boundary. Zielgruppe: Security engineers, identity and access management teams, platform engineers. Typische Einrichtungszeit: 10 minutes.
Discover over-privileged OAuth grants, stale app access, and shadow AI tool sprawl across Google Workspace, Microsoft 365, and GitHub. Runs entirely inside your tenant boundary.
Kopieren Sie ein Starter-Setup, führen Sie es in Ihrer Umgebung aus und kehren Sie für tiefergehende Details hierher zurück.
Demonstration only
This configuration is designed for ease of use. To deploy scanner clients at scale, please plan your deployment architecture accordingly or contact us for enterprise best practices.
Download the exact source files referenced on this page, or run the one-command installer to write them locally before following the deployment steps.
Creates the AWS CDK project under `deploy/aws-saas-scanner/` so the scheduled Fargate deployment commands on this page work unchanged.
BLACKSHIELD_SAAS_IMAGE=public.ecr.aws/blackshield-security/saas-scanner:1.0.11 \
bash <(curl -fsSL https://blackshield.chaplau.com/source-bundles/aws-saas-scanner.sh)
cd deploy/aws-saas-scannerCreates the Terraform module under `deploy/gcp-saas-scanner/` and prefills the current platform API URL so the Cloud Run deployment commands on this page work unchanged.
BLACKSHIELD_SAAS_IMAGE=public.ecr.aws/blackshield-security/saas-scanner:1.0.11 \
BLACKSHIELD_SITE_URL=https://blackshield.chaplau.com \
BLACKSHIELD_API_URL=https://api.blackshield.chaplau.com \
bash <(curl -fsSL https://blackshield.chaplau.com/source-bundles/gcp-saas-scanner.sh)
cd deploy/gcp-saas-scannerdocker run --rm \
-e BLACKSHIELD_API_URL=https://api.blackshield.chaplau.com \
-e BLACKSHIELD_API_KEY=sp_xxxx \
-e SAAS_SCAN_MODE=oauth \
-e SAAS_SCAN_PROVIDER=google_workspace \
-e SAAS_COLLECTOR_STRATEGY=api \
-e SAAS_ACCESS_TOKEN=ya29.xxxx \
-e GOOGLE_CUSTOMER_ID=C0xxxxxxx \
-e SCAN_INTERVAL_SECONDS=0 \
public.ecr.aws/blackshield-security/saas-scanner:1.0.11cd deploy/aws-saas-scanner
pip install -r requirements.txt
# Store credentials (once)
aws secretsmanager create-secret \
--name "blackshield/saas-scanner/google" \
--secret-string '{
"BLACKSHIELD_API_KEY": "sp_xxxx",
"SAAS_ACCESS_TOKEN": "ya29.xxxx",
"GOOGLE_CUSTOMER_ID": "C0xxxxxxx"
}'
# Deploy Fargate task (scans every 6 hours)
python3.11 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
export BLACKSHIELD_API_URL=https://api.blackshield.chaplau.com
export SCANNER_IMAGE_URI=public.ecr.aws/blackshield-security/saas-scanner:1.0.11
export SAAS_SCAN_PROVIDER=google_workspace
export SECRET_NAME=blackshield/saas-scanner/google
cdk bootstrap
cdk deploy BlackShieldSaasScanner-Google --require-approval neverapiVersion: batch/v1
kind: CronJob
metadata:
name: blackshield-saas-github
namespace: blackshield
spec:
schedule: "0 3 * * *"
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
spec:
restartPolicy: OnFailure
containers:
- name: saas-scanner
image: public.ecr.aws/blackshield-security/saas-scanner:1.0.11
env:
- { name: BLACKSHIELD_API_URL, value: "https://api.blackshield.chaplau.com" }
- { name: SAAS_SCAN_MODE, value: ai_assets }
- { name: SAAS_SCAN_PROVIDER, value: github_code }
- { name: SAAS_COLLECTOR_STRATEGY, value: api }
- { name: SCAN_INTERVAL_SECONDS, value: "0" }
- { name: GITHUB_ORG, value: your-org }
- name: BLACKSHIELD_API_KEY
valueFrom:
secretKeyRef: { name: blackshield-saas-scanner, key: api-key }
- name: GITHUB_TOKEN
valueFrom:
secretKeyRef: { name: blackshield-saas-scanner, key: github-token }Nutzen Sie die folgenden Schritte, um den Rollout anzupassen, Verantwortlichkeiten zu prüfen und die Bereitstellung sicher zu erweitern.
Schritt 1
Generate the necessary access tokens from your target SaaS provider. The scanner requires read-only scopes to inspect user grants and installed apps.
Erfolgreicher Abschluss
GitHub: Create a Personal Access Token (PAT) or GitHub App token with `read:org` and `repo` scopes.
Hilfreicher Kontext
Schritt 2
Before deploying the automated schedule, verify your credentials and network access by running a one-shot container locally.
Erfolgreicher Abschluss
Check the terminal output to ensure the scanner successfully authenticates and pushes at least one batch of findings.
Schritt 3
Automate the scan cadence (e.g., daily) by deploying the scanner as a scheduled task in AWS or GCP.
Erfolgreicher Abschluss
Kubernetes: Apply a `CronJob` manifest to run the scanner on a schedule.
Schritt 4
Check the platform dashboard to review the ingested SaaS inventory.
Erfolgreicher Abschluss
For GitHub targets, review any newly discovered shadow AI/LLM dependencies.
Keep your rollout moving with the next recommended step.
Findings prüfen und priorisieren