diff --git a/vault/resource_identity_oidc_scope.go b/vault/resource_identity_oidc_scope.go index 4d3717ac6..b3a239f43 100644 --- a/vault/resource_identity_oidc_scope.go +++ b/vault/resource_identity_oidc_scope.go @@ -3,6 +3,7 @@ package vault import ( "fmt" "log" + "strings" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -17,6 +18,9 @@ func identityOIDCScopeResource() *schema.Resource { Update: identityOIDCScopeCreateUpdate, Read: identityOIDCScopeRead, Delete: identityOIDCScopeDelete, + Importer: &schema.ResourceImporter{ + State: schema.ImportStatePassthrough, + }, Schema: map[string]*schema.Schema{ "name": { @@ -107,6 +111,11 @@ func identityOIDCScopeRead(d *schema.ResourceData, meta interface{}) error { } } + name := strings.Trim(strings.TrimPrefix(path, identityOIDCScopePathPrefix), "/") + if err := d.Set("name", name); err != nil { + return fmt.Errorf("error setting state key %q on OIDC Scope %q, err=%w", "name", path, err) + } + return nil } diff --git a/vault/resource_identity_oidc_scope_test.go b/vault/resource_identity_oidc_scope_test.go index 29c7b980f..58242a682 100644 --- a/vault/resource_identity_oidc_scope_test.go +++ b/vault/resource_identity_oidc_scope_test.go @@ -42,6 +42,11 @@ func TestAccIdentityOIDCScope(t *testing.T) { resource.TestCheckResourceAttr(resourceName, "template", updatedScope), ), }, + { + ResourceName: resourceName, + ImportState: true, + ImportStateVerify: true, + }, }, }) }