Por que 'a == b ou c ou d' sempre é avaliado como Verdadeiro? [duplicado]

Esta questão já tem uma resposta aqui:

Como testar várias variáveis ​​em relação a um valor? 20 respostas

Estou escrevendo um sistema de segurança que nega acesso a usuários não autorizados.

import sys

print("Hello. Please enter your name:")
name = sys.stdin.readline().strip()
if name == "Kevin" or "Jon" or "Inbar":
    print("Access granted.")
else:
    print("Access denied.")

Ele concede acesso a usuários autorizados conforme o esperado, mas também permite a entrada de usuários não autorizados!

Hello. Please enter your name:
Bob
Access granted.

Por que isso ocorre? Eu claramente afirmei apenas conceder acesso quandoname é igual a Kevin, Jon ou Inbar. Eu também tentei a lógica oposta,if "Kevin" or "Jon" or "Inbar" == name, Mas o resultado é o mesmo.

questionAnswers(1)

yourAnswerToTheQuestion