def parse_user_assign_sync_agent_data(json):
    """
    Parse the incoming statement for a sync agent event concerning a user role assignment.

    :param json: A statement concerning a user role assignment that needs to be synced.
    :type json: dict(str, NoneType)
    :return: A dictionary containing all user information, a course id, and its role for that course.
    :rtype: dict(str, str)
    """
    statement = json['statement']
    role = statement['object']['definition']['name']['en']
    course_id = statement['object']['id'].split("=")[-1]
    user_info = statement['context']['extensions']['http://id.tincanapi.com/activitytype/role']
    sync_user_role_data = {
        'role': role,
        'course_id': course_id,
    }
    sync_user_role_data.update(user_info)
    return sync_user_role_data