Description
Currently, users and service principals in Databricks are identified by 2 identifiers: their int64 unique identifier, and their username. For users, username is typically an email address, while for service principals, this is a UUID (also known as the 'application id').
Different parts of our product require one or the other identifier. For example, our identity APIs all use the int64 identifier, while OAuth convention is to use the application id for identifying a service principal.
Currently, it is easy to look up a user or service principal by int64 id using the CLI, but difficult and not intuitive to look up by username.
It is a pain point for customers when they have a username identifier and need the int64. To address this, we would like to make it easy for a customer to look up a user by username.
This is actually possible today by executing the following:
databricks account service-principals list --filter 'applicationId eq "<service-principal-application-id>"'
We would ideally like to provide a simpler API that customers can use for this, since it's a common need. For example, we would like something like:
databricks account service-principals get --application-id <service-principal-application-id>
This command could simply invoke the request using the filter above. It is just a wrapper around the filter to make this operation easy and intuitive for customers.