Skip to content

[FEATURE] Ephemeral resource for creating OIDC client_secret #246

@alexpekurovsky

Description

@alexpekurovsky

What area do you want to see improved?

terraform provider

Is your feature request related to a problem? Please describe.

We would like to create client secrets for OIDC applications using ephemeral terraform resources to avoid storing them in terraform state
See: https://api.sap.com/api/SCI_Application_Directory/path/createApiSecret

Describe the solution you would like

Something like this:

resource "sci_application" "myapplication" { }
or
data "sci_application" "myapplication" { }

ephemeral "sci_client_secret" "mysecret" {
  application_id         = sci_application.myapplication.id
  authorization_scopes   = ["manageApp", "oAuth", "readUserProfile", "manageUsers" ]
  description            = "some description"
  valid_to / expiration  = "some terraform format for time?"
  # api should get it like this:
  # "validTo": "2029-10-12T10:00:00Z"  
}

ephemeral resource should create client secret and return it, so it can be used in next resources, for example:

resource "vault_kv_secret_v2" "mysecret" {
  mount   = "kv"
  path    = "some/location/in/vault"

  data_json_wo = {
    client_secret = ephemeral.sci_client_secret.mysecret.value
  }
}

Describe alternatives you have considered

No real alternatives, any null_resource, data external, etc will save secret in terraform state

Additional context

No response

Metadata

Metadata

Assignees

Labels

blockedCurrently not achievableenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions