Airflow 2.1.0, Docker

**What happened**:

Users with the Guest role assigned are stuck in a redirect loop once they attempt to login successfully to the web interface.

**What you expected to happen**:

Get minimal access to the dashboard with the appropriate views for a guest role

**How to reproduce it**:
1. Assign a guest role to any user and remove any other roles with the administrator user.
2. Logout from the admin account 
3. Login as the guest user
4. You will notice constant HTTP redirects, and the dashboard will not show up.


airflow/www/security.py
"""Cache permissions"""
        self.perms = self.get_current_user_permissions()
    def _has_role(self, role_name_or_list):
        """Whether the user has this role name"""
        if not isinstance(role_name_or_list, list):
            role_name_or_list = [role_name_or_list]
        return any(r.name in role_name_or_list for r in self.get_user_roles())
    def _has_perm(self, action_name, resource_name):
        """Whether the user has this perm"""
        if hasattr(self, 'perms') and self.perms is not None:
            if (action_name, resource_name) in self.perms:
                return True
        
        self._get_and_cache_perms()
        return (action_name, resource_name) in self.perms
    def has_all_dags_access(self):
        """
        Has all the dag access in any of the 3 cases:
        1. Role needs to be in (Admin, Viewer, User, Op).
        2. Has can_read action on dags resource.
        3. Has can_edit action on dags resource.
        """
        return (
            self._has_role(['Admin', 'Viewer', 'Op', 'User'])
            or self._has_perm(permissions.ACTION_CAN_READ, permissions.RESOURCE_DAG)
            or self._has_perm(permissions.ACTION_CAN_EDIT, permissions.RESOURCE_DAG)
        )
    def clean_perms(self):