This commit introduces a temporary table to KeychainExternal provider. This is used to return a result set that contains the exact query as identifying column, rather than the matching user id. This is helpful because we match case insensitively internally, while the querying implementation might wish to map search results against verbatim search strings.