hashicorp/vault · error · Error

Configuration of the ${method.methodType} method is not supp

Error message

Configuration of the ${method.methodType} method is not supported by the Vault UI.

What it means

Thrown by the auth method configuration form component (ui/app/components/auth-config-form/config.ts:110). configMethod() switches over the mounted auth method's type and maps it to a generated API client call (jwt/oidc, kubernetes, ldap, okta, radius). Any methodType not covered by a case falls through to the default and throws, meaning the UI has no configuration form implementation for that auth method.

Source

Thrown at ui/app/components/auth-config-form/config.ts:110

      case 'azure':
        return this.api.auth.azureConfigureAuth(path, payload as AzureConfigureAuthRequest);
      case 'github':
        return this.api.auth.githubConfigure(path, payload as GithubConfigureRequest);
      case 'gcp':
        return this.api.auth.googleCloudConfigureAuth(path, payload as GoogleCloudConfigureAuthRequest);
      case 'jwt':
      case 'oidc':
        return this.api.auth.jwtConfigure(path, payload as JwtConfigureRequest);
      case 'kubernetes':
        return this.api.auth.kubernetesConfigureAuth(path, payload as KubernetesConfigureAuthRequest);
      case 'ldap':
        return this.api.auth.ldapConfigureAuth(path, payload as LdapConfigureAuthRequest);
      case 'okta':
        return this.api.auth.oktaConfigure(path, payload as OktaConfigureRequest);
      case 'radius':
        return this.api.auth.radiusConfigure(path, payload as RadiusConfigureRequest);
      default:
        throw new Error(`Configuration of the ${method.methodType} method is not supported by the Vault UI.`);
    }
  }

  @task
  @waitFor
  *saveModel(evt: HTMLElementEvent<HTMLFormElement>) {
    evt.preventDefault();
    this.errorMessage = '';
    try {
      const { form, method } = this.args;
      const { data } = form.toJSON();
      yield this.configMethod(method.path, data as ConfigPayload);
      this.router.transitionTo('vault.cluster.access.methods').followRedirects();
      this.flashMessages.success('The configuration was saved successfully.');
    } catch (err) {
      const { message } = yield this.api.parseError(err);
      this.errorMessage = message;
    }

View on GitHub (pinned to 744b611b57)

Solutions

  1. Configure the unsupported auth method via the Vault CLI or HTTP API instead of the UI (e.g. vault write auth/<mount>/config ...)
  2. Upgrade the Vault UI to a version whose config form supports the methodType you mounted
  3. If you develop on the UI, add a case to configMethod() that calls the corresponding generated API method

Example fix

// before: unsupported types throw
case 'radius':
  return this.api.auth.radiusConfigureAuth(path, payload as RadiusConfigureAuthRequest);
default:
  throw new Error(`Configuration of the ${method.methodType} method is not supported by the Vault UI.`);

// after: map the new method to its generated API call
case 'radius':
  return this.api.auth.radiusConfigureAuth(path, payload as RadiusConfigureAuthRequest);
case 'saml':
  return this.api.auth.samlConfigure(path, payload as SamlConfigureRequest);
default:
  throw new Error(`Configuration of the ${method.methodType} method is not supported by the Vault UI.`);
Defensive patterns

Strategy: type-guard

Type guard

const UI_CONFIGURABLE_METHODS = ['jwt', 'oidc', 'kubernetes', 'ldap', 'okta', 'radius'] as const;
type UiConfigurableMethod = (typeof UI_CONFIGURABLE_METHODS)[number];
function isUiConfigurable(methodType: string): methodType is UiConfigurableMethod {
  return (UI_CONFIGURABLE_METHODS as readonly string[]).includes(methodType);
}

// usage: only mount the form when the guard passes
if (!isUiConfigurable(method.methodType)) {
  renderCliInstructions(method.methodType); // instead of hitting the throwing default case
}

Try / catch

try {
  await this.configMethod(method.path, data);
} catch (e) {
  if (e.message.includes('is not supported by the Vault UI')) {
    notifyUser(`Configure ${method.methodType} via the CLI instead`);
  } else {
    throw e;
  }
}

Prevention

When it happens

Trigger: Opening the configuration form for a mounted auth method whose methodType is outside the switch — e.g. cert, saml, approle, token, or any auth method introduced after this component was written.

Common situations: An enterprise-only auth method (such as SAML) is mounted and the UI routes the config screen to this generic component; an older UI running against a newer Vault server that supports more method types; tests that mount unusual auth methods.


AI-assisted analysis of hashicorp/vault@744b611b57 (2026-08-15). Data as JSON: /api/errors/a099048a5bac4210. Report an issue: GitHub.