Creating a Secrets Manager service instance
Get started with IBM Cloud® Secrets Manager by creating a service instance in IBM Cloud console, IBM Cloud CLI, or API.
Choosing a plan
Before you create an instance, it's important to understand the key differences between the available plans:
| Consideration | Trial and Standard plans | Vault Dedicated plan |
|---|---|---|
| Features | IBM-managed secrets with built-in secret types and engines. | Managed HashiCorp Vault Enterprise capabilities with native Vault features. |
| Upgrade path | Trial can be upgraded to Standard only. |
Cannot upgrade from Trial/Standard to Vault Dedicated. |
| Instance limits | One trial instance per account. | Multiple instances allowed. |
| Use case | IBM Cloud-native secret management. | Enterprise Vault workloads requiring native Vault features. |
The Vault Dedicated plan is currently available as a public beta. Beta features are provided for evaluation and testing purposes and have limitations compared to generally available features.
Vault Dedicated public beta limitations
During the public beta period, the Vault Dedicated has the following temporary restrictions:
- Instance limit: Only 1 Vault Dedicated instance per account during beta.
- No upgrade path: Cannot upgrade from beta to GA. All beta instances will be deleted before general availability.
- Regional availability: Available in Dallas and Frankfurt.
- Free during beta: No charges apply during the beta period.
- Beta to GA migration: Data migration from beta instances to GA instances is not supported.
These limitations are temporary and apply only during the public beta period. It will be removed or modified when the Vault Dedicated reaches general availability.
Key points to remember:
- Trial instances can only be upgraded to Standard plan. To use the Vault Dedicated, you must provision a new Vault Dedicated instance.
- Only one Trial instance is allowed per account. Before creating a new Trial instance, you must delete any existing Trial instance and its reclamation.
- Features differ significantly between plans. Review the Feature overview to determine which plan best fits your needs.
Before you begin
Provisioning Secrets Manager in your IBM Cloud account can take 5 - 15 minutes to complete as the service creates a single tenant, dedicated instance.
Creating a Secrets Manager instance in the UI
To create an instance of Secrets Manager from the IBM Cloud console, complete the following steps.
-
In the console, go to the Secrets Manager offering details page.
-
In the Create tab, select the region that represents the geographic area where you want provision your instance.
-
Review and select a pricing plan.
You can create only one Trial instance of Secrets Manager per account. Before you can create a new Trial instance, you must delete the existing Trial instance and its reclamation.
-
Provide a name for your instance.
-
Select a resource group.
-
Optional: Add tags to help you to organize the instance in your account.
-
Determine an option for enabling customer-managed encryption for your instance.
You can enhance the security of your secrets at rest by integrating with a key management service. For more information about customer-managed encryption, check out Protecting your sensitive data in Secrets Manager.
You can also use the Key Management Services All-Inclusive module for streamlined key management. Explore Terraform IBM Modules for more.
-
Determine an option for connecting to Secrets Manager. By default instances of Secrets Manager are created with only a private endpoint.
Select either
private-onlyorpublic-and-private. For more information about setting up your account to support the private connectivity option, see Enabling VRF and service endpoints. -
Click Create to create an instance of Secrets Manager in the account, region, and resource group that you selected.
To update your service plan after you create an instance, see Updating your service plan.
Creating a Secrets Manager instance from the CLI
To create an instance of Secrets Manager by using the IBM Cloud CLI, complete the following steps.
-
Log in to IBM Cloud through the IBM Cloud CLI.
ibmcloud loginIf the login fails, run the
ibmcloud login --ssocommand to try again. The--ssoparameter is required when you log in with a federated ID. If this option is used, go to the link listed in the CLI output to generate a one-time passcode. -
Select the account, region, and resource group where you want to create a Secrets Manager service instance.
ibmcloud target -r REGION_NAME -g RESOURCE_GROUP_NAME -
Create an instance of Secrets Manager within that account and resource group.
ibmcloud resource service-instance-create INSTANCE_NAME secrets-manager PLAN REGION_NAME [OPTIONS]Description of the information that is required to provision the Secrets Manager service using CLI Variable Description Instance name ( instance_name)A unique alias for your service instance. Region ( region)The region the instance should be provisioned in. Supported regions. Pricing plan ( plan)The pricing plan that you want to use. Use trial,standardordedicated.Endpoints ( options)Optional. By default instances of Secrets Manager are created with only a private endpoint ( private-only). If you need to provision an instance of Secrets Manager that uses also a public endpoint, append the--service-endpoints public-and-privateoption to your command.Encryption ( options)To provision an instance of Secrets Manager that uses customer-managed encryption, append -p '{"kms_key": "<root_key_crn>"}'. Replace<root_key_crn>with the CRN value for the root key that you want to integrate.You can create only one Trial instance of Secrets Manager per account. Before you can create a new Trial instance, you must delete the existing Trial instance and its reclamation.
To update your service plan after you create an instance, see Updating your service plan.
For more information on the different available plans, see Feature overview.
Creating a Secrets Manager instance from API
To create an instance of Secrets Manager from API, complete the following steps.
For additional programming languages support, see the Resource Controller API Docs.
-
Obtain an IBM Cloud IAM access token.
-
Run a curl command to provision an instance of Secrets Manager.
curl -X POST https://resource-controller.cloud.ibm.com/v2/resource_instances -H "Authorization: Bearer <IAM token>" -H 'Content-Type: application/json' -d '{ "name": "<instance_name>", "target": "<region>", "resource_group": "<resource_group_id>", "resource_plan_id": "<plan>", "parameters": {"service-endpoints": "public-and-private","kms_key": "<root_key_crn>"} }'Description of the information that is required to provision the Secrets Manager service using API Variable Description Instance name ( name)A unique alias for your service instance. Target ( region)The region the instance should be provisioned in. Supported regions. Pricing plan ( plan)The pricing plan that you want to use, provided as a plan ID. Use 869c191a-3c2a-4faf-98be-18d48f95ba1ffortrial,7713c3a8-3be8-4a9a-81bb-ee822fcaac3dforstandardordedicated.Endpoints By default instances of Secrets Manager are created with only a private endpoint. If you need to provision an instance of Secrets Manager that uses also a public endpoint, add "service-endpoints":"public-and-private"toparameters.Encryption To provision an instance of Secrets Manager that uses customer-managed encryption, keep the kms_keyparameter, and replace<root_key_crn>with the CRN value for the root key that you want to integrate.You can create only one Trial instance of Secrets Manager per account. Before you can create a new Trial instance, you must delete the existing Trial instance and its reclamation.
To update your service plan after you create an instance, see Updating your service plan.
For more information on the different available plans, see Feature overview.
Creating a Secrets Manager instance using Terraform
To create an instance of Secrets Manager using Terraform, include the following parameters in your ibm_resource_instance resource for Secrets Manager.
service:secrets-managerplan: eitherStandard,Trialordedicated. Learn more about the service plansservice_endpoints: Eitherprivateorpublic-and-private. If not included, default isprivateInclude the following insideparametersfor further customization.kms_key: Root key CRN from Key Protect. If not included, default is root key that is managed by Secrets Manager
An example resource would look like the following.
resource "ibm_resource_instance" "sm_instance" {
name = "demo-sm-instance"
service = "secrets-manager"
plan = "standard"
location = "us-south"
service_endpoints = "public-and-private"
}
You can also use the IBM Cloud® Secrets Manager to provision and configure Secrets Manager instances as code. For more information about Terraform IBM Modules, see About Terraform IBM Modules.
For more information on the different available plans, see Feature overview.
Upgrading a Secrets Manager instance to the Standard plan
When your Trial instance expires, you lose access to your secrets, and integrations. To preserve your data, and prevent any disruptions in your workflow, you must upgrade to the Standard plan before your Trial plan expires. Follow the steps to update your pricing plan. You can use the UI, API, and CLI to complete this process.
Trial plan instances can only be upgraded to the Standard plan. To use the Vault Dedicated plan, you must provision a new Vault Dedicated instance separately.