Script icon
Docker icon
If icon
SlackIncomingWebhook icon
Log icon
Return icon
Schedule icon

1Password SCIM Bridge Sync Status Sentinel

Audits 1Password SCIM Bridge health endpoints and provisioning logs, detects sync errors and heartbeat failures, and alerts via Slack.

Categories
CloudInfrastructure

Audits 1Password SCIM Bridge container health endpoints and SCIM v2 User endpoint responsiveness, detecting synchronization errors, certificate expiration, and bridge heartbeat failures before workforce provisioning deadlocks emerge.

How it works

  1. SCIM Health Endpoint Interrogation: Transmits authenticated HTTP requests against the 1Password SCIM Bridge /health endpoint validating container daemon responsiveness.
  2. SCIM v2 Provisioning API Verification: Validates the operational readiness of the /Users SCIM API endpoint confirming active cryptographic federation with 1Password cloud servers.
  3. Error Condition Aggregation: Evaluates returned HTTP status codes and operational diagnostic payloads against defined degradation thresholds.
  4. IT Operations Incident Alerting: Dispatches high-urgency notifications to designated IT Operations Slack channels with explicit error summaries for rapid cluster remediation.

Architecture diagram

flowchart TD
    A[periodic_scim_audit Schedule Trigger] --> B[scan_scim_bridge_health Python Script]
    B --> C[check_scim_bridge_degraded Flowable If]
    C -- Threshold Breached --> D[notify_slack_itops_alert Webhook]
    C -- Metrics Nominal --> E[log_nominal_scim_state Log]
    D --> E
    E --> F[export_scim_manifest Return]

Architecture components

  • Trigger (periodic_scim_audit): Drives scheduled recurring surveillance cycles without human intervention.
  • Inspection Task (scan_scim_bridge_health): Queries target APIs and structures diagnostic indicators via Kestra outputs.
  • Evaluation Gate (check_scim_bridge_degraded): Evaluates operational safety boundaries using deterministic boolean branching.
  • Notification Action (notify_slack_itops_alert): Dispatches rich, actionable incident messages directly to team channels.
  • Manifest Return (export_scim_manifest): Emits structured compliance payloads for SIEM and analytics records.

Key capabilities

  • Automated Health Polling: Continuous scheduled surveillance executed on customizable recurring intervals without dedicated agent daemons.
  • Deterministic Threshold Evaluation: Pure boolean and numeric tolerance checks eliminating false positives and alert noise.
  • Contextual Incident Notification: Rich Slack messages populated with explicit resource identifiers, error reasons, and metrics.
  • Machine-Readable Audit Manifest: Structured execution telemetry exported for compliance archives, SIEM ingestion, or analytics dashboards.

What you get

  • Continuous automated heartbeat monitoring of self-hosted enterprise 1Password SCIM bridge instances
  • Immediate alert notification when Okta, Entra ID, or Google Workspace provisioning synchronization halts
  • Prevention of employee offboarding failures where deprovisioned personnel retain credential vault access
  • Structured compliance manifest detailing bridge response codes, error details, and audit timestamps

Who it's for

  • Corporate IT Systems Administrators managing automated identity lifecycles and workforce credential vaults
  • Identity Security Architects ensuring timely offboarding compliance across SaaS access infrastructure
  • DevOps Engineers maintaining containerized 1Password SCIM bridge deployments on Kubernetes or AWS ECS

Why orchestrate this with Kestra

  • Scheduled health checking running without reliance on external commercial synthetic monitoring platforms
  • Centralized secret management securing SCIM bearer authentication tokens within encrypted namespaces
  • Decoupled workflow execution capable of orchestrating container restarts or notification dispatches
  • Comprehensive audit execution history demonstrating automated compliance surveillance for SOC 2 reviews

Use cases

  • TLS Certificate Expiration Discovery: Detect expired TLS certificates or Let's Encrypt renewal failures on the internal SCIM ingress gateway.
  • Session Credential Expiration Identification: Identify 1Password cloud session revocation where the bridge's scimsession credentials require re-authentication.
  • Offboarding Synchronization Auditing: Audit enterprise employee deprovisioning synchronization following identity provider configuration changes.

Inputs

Name Type Default Description
scim_bridge_url STRING https://scim.internal.company.com Base HTTPS URL hosting the enterprise 1Password SCIM bridge deployment.
max_sync_errors_threshold INT 1 Maximum tolerated failed provisioning transactions before classifying the bridge as degraded.
alert_on_degraded BOOL True Toggle whether Slack webhook alerts are dispatched upon detecting SCIM bridge degradation.
timeout_seconds INT 15 Connection timeout in seconds for SCIM bridge health and provisioning API requests.

Expected outputs

  • {{ outputs.scan_scim_bridge_health.vars.bridge_status }}: Health status string returned by the 1Password SCIM bridge health endpoint.
  • {{ outputs.scan_scim_bridge_health.vars.http_status }}: HTTP status code received during the bridge health interrogation check.
  • {{ outputs.scan_scim_bridge_health.vars.recent_error_count }}: Count of observed operational errors during the audit check.
  • {{ outputs.scan_scim_bridge_health.vars.error_details }}: Concatenated diagnostic messages and HTTP error details explaining bridge degradation.
  • {{ outputs.scan_scim_bridge_health.vars.is_alerting }}: Boolean flag indicating whether the bridge status or error count triggered an alert.

Prerequisites

  • Deployed 1Password SCIM Bridge instance operating on Kubernetes, Docker, or AWS ECS.
  • Valid SCIM Bridge Bearer Token provisioned during bridge initial configuration.
  • Valid OP_SCIM_BEARER_TOKEN secret stored within Kestra namespace secret configuration.
  • Configured Slack incoming webhook URL with permissions to post messages into the designated alert channel.

Secrets

  • OP_SCIM_BEARER_TOKEN: Vault secret required for authenticated API execution and notifications.
  • SLACK_WEBHOOK_URL: Vault secret required for authenticated API execution and notifications.

Quick start

  1. Register the required secrets in your Kestra namespace settings.
  2. Import this blueprint into your Kestra instance under the company.security namespace.
  3. Review input parameters such as threshold levels and target resource identifiers.
  4. Execute the flow manually to verify connectivity, then enable the automated schedule.

Common pitfalls and troubleshooting

  • Scimsession File Corruption: The 1Password SCIM bridge relies on an encrypted scimsession credentials file; if corrupted or expired, the bridge returns 401 Unauthorized.
  • Network Egress Firewalls: The SCIM bridge requires continuous outbound HTTPS connectivity to *.1password.com; verify corporate egress firewalls do not block outbound traffic.
  • Bearer Token Format Mismatch: Ensure the bearer token passed in the Authorization header matches the exact secret configured in the identity provider.
  • Internal DNS Resolution Failures: If deploying the SCIM bridge on internal private VPC networks, verify Kestra runners have internal DNS resolution for the bridge host.

How to extend

  • Automated Bridge Pod Restart: Trigger Kubernetes rollout restart deployment/op-scim-bridge upon persistent heartbeat timeouts.
  • Identity Provider Sync Retries: Trigger automated on-demand Okta or Azure AD SCIM re-synchronization tasks following bridge recovery.
  • PagerDuty Escalation: Escalate to PagerDuty high-urgency incident response if the bridge remains offline during scheduled employee deprovisioning batches.

Links

See How

New to Kestra?

Use blueprints to kickstart your first workflows.