Skip to content

[FEATURE] Feature Request: Elastic Cloud ID Authentication Support #314

@Blankll

Description

@Blankll

Summary

Add support for Elastic Cloud ID authentication to simplify connections to Elastic Cloud hosted clusters.

Background

Currently, DocKit supports Elasticsearch connections via:

  • Direct host URL with username/password (Basic Auth)
  • API Key authentication

Elastic Cloud provides a Cloud ID — a base64-encoded string containing the cluster endpoint, region, and deployment configuration. Supporting Cloud ID would streamline the connection process for Elastic Cloud users.

Proposed Feature

Connection Method

Add a "Cloud ID" connection option alongside existing authentication methods:

Connection Type: Elastic Cloud
Cloud ID: production:dXMtZWFzdC0xLmF3cy5mb3VuZC5pbyQ...
Username: elastic
Password: ••••••••

or with API Key:

Connection Type: Elastic Cloud
Cloud ID: production:dXMtZWFzdC0xLmF3cy5mb3VuZC5pbyQ...
API Key: VnVhQ2ZHY0JDZGJrU...

Technical Implementation

  1. Cloud ID Parser: Decode the base64 Cloud ID to extract:

    • Elasticsearch endpoint URL
    • Kibana endpoint (optional)
    • Region information
  2. UI Changes:

    • Add "Cloud ID" field in connection form
    • Auto-detect and pre-fill when Cloud ID is provided
    • Optionally hide the host URL field when using Cloud ID
  3. Validation:

    • Validate Cloud ID format before attempting connection
    • Provide clear error messages for invalid Cloud IDs

User Benefits

  • Simplified Setup: Copy-paste Cloud ID from Elastic Cloud console
  • Fewer Errors: No need to manually type long host URLs
  • Better UX: Aligns with Elastic Cloud's recommended connection method
  • Consistency: Matches how official Elastic clients handle Cloud connections

Reference

Priority

Medium - Nice to have for Elastic Cloud users, but direct URL connections still work

Additional Notes

  • Consider making this available for both Elasticsearch and OpenSearch (if OpenSearch Cloud IDs have similar format)
  • Should maintain backward compatibility with existing connection profiles
  • May want to add a "Test Connection" button to validate before saving

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions