
CyberArk's Official Terraform Provider for CyberArk. This provider allows you to manage CyberArk resources using Terraform.
Features and Services
- Supported Resources
- SIA VM Secret
- SIA DB Secret
- SIA Target Set Workspace
- SIA DB Workspace
- SIA Access Connector
- Connector Manager Pool
- Connector Manager Pool Identifier
- Connector Manager Network
- PCloud Account
- PCloud Safe
- PCloud Safe Member
- Supported Data Sources
- SIA VM Secret
- SIA DB Secret
- SIA Target Set Workspace
- SIA DB Workspace
- SIA Access Connector
- Connector Manager Pool
- Connector Manager Pool Identifier
- Connector Manager Network
- PCloud Account
- PCloud Safe
- PCloud Safe Member
TL;DR
Installation
terraform {
required_providers {
idsec = {
source = "cyberark/idsec"
version = ">= 1.0"
}
}
}
Install from Source
git clone https://github.com/cyberark/terraform-provider-idsec.git
cd terraform-provider-idsec
make build
Example Usage
terraform {
required_providers {
idsec = {
source = "cyberark/idsec"
version = ">= 1.0"
}
}
}
provider "idsec" {
auth_method = "identity"
username = var.idsec_username
secret = var.idsec_secret
}
resource "idsec_cmgr_network" "example_network" {
name = "example_network"
}
resource "idsec_cmgr_pool" "example_pool" {
name = "example_pool"
description = "A pool for example resources"
assigned_network_ids = [idsec_cmgr_network.example_network.network_id]
}
resource idsec_sia_access_connector "example_connector" {
connector_type = "ON-PREMISE"
connector_os = "linux"
connector_pool_id = idsec_cmgr_pool.example_pool.pool_id
target_machine = "1.1.1.1"
username = "ec2-user"
private_key_path = "~/.ssh/key.pem"
}
In this example, we create a network, a pool, and a SIA connector using the Idsec Terraform provider. The access connector is configured to be installed on the ec2 machine with the given private key and username.
More examples can be found in the examples directory.
Provider Configuration can be found in the provider documentation.
Schemas can be found in the relevant documentation for each resource / data source.
Customizing Documentation Service Names
Service names in the documentation sidebar can be customized by editing docs/service-names.yaml.
How to Add or Modify Service Names
- Open
docs/service-names.yaml
- Add or update a line with the format:
directory-name: "Display Name"
- Run
go run tools/gen-nav.go to regenerate the navigation
- Review the changes in
mkdocs.yml
- Commit both files to git
Services not listed in the YAML file will automatically display their directory name in uppercase.
Acceptance tests
Refer to the acceptance tests guide for adding or maintaining provider tests: Acceptance Tests Documentation.
Container based development
Refer to the Local Container Setup instructions file
License
This project is licensed under Apache License 2.0 - see LICENSE for more details
Copyright (c) 2025 CyberArk Software Ltd. All rights reserved.