## Bug description

personal_api_key.last_updated_at is updated every request with API keys.

This is one of the most time-consuming queries we do against postgres: https://metabase.posthog.net/question/344-most-time-consuming-postgres-queries


## Environment

- [x] PostHog Cloud
- [ ] self-hosted PostHog (ClickHouse-based), version/commit: _please provide_
- [ ] self-hosted PostHog (Postgres-based, legacy), version/commit: _please provide_

## Additional context

There's a half-hearted attempt at fixing this over at https://github.com/PostHog/posthog/pull/10383, but this was shot down due to UX concerns.

#### *Thank you* for your bug report – we love squashing them!

posthog/auth.py
"""
    DEPRECATED: Used for supporting legacy endpoints not on DRF.
    Authentication for function views.
    """
    @functools.wraps(endpoint)
    def wrapper(request: HttpRequest):
        if not request.user.is_authenticated:
            try:
                auth_result = PersonalAPIKeyAuthentication.authenticate(request)
                if isinstance(auth_result, tuple) and auth_result[0].__class__.__name__ == "User":
                    request.user = auth_result[0]
                else:
                    raise AuthenticationFailed("Authentication credentials were not provided.")
            except AuthenticationFailed as e:
                return JsonResponse({"detail": e.detail}, status=401)
        return endpoint(request)
    return wrapper