¿Hay algún problema con el uso del mismo nombre de usuario para todos los usuarios de API con autenticación básica HTTP?

2

Estoy creando una API web que pone en cola los mensajes y enruta los webhooks a sitios individuales. El servicio de correo electrónico transaccional MailGun proporciona una clave api para todos los usuarios, que se utiliza como la contraseña de autenticación básica HTTP. Todas las cuentas usan api como el nombre de usuario de autenticación básico HTTP. Esto da como resultado api:SPECIFIC_API_TOKEN para todas las cuentas.

¿Es esta una práctica aceptable, y hay una situación específica en la que el servicio que estoy construyendo podría o no debería usar este método de autenticación?

    
pregunta CanadaIT 29.03.2017 - 21:48
fuente

2 respuestas

1

Se utiliza para facilitar el uso de la funcionalidad de Autenticación Básica, Autentificación Básica requiere que envíe un nombre de usuario también ( rfc2617 ):

  

El esquema de autenticación "básico" se basa en el modelo que el cliente debe autenticarse con un ID de usuario y una contraseña para cada dominio.

En el caso de MailGun, solo usan el token de API para identificar al usuario (que es lo que normalmente hace un nombre de usuario) así como para autenticar a ese usuario (contraseña).

Podrían haber usado un encabezado personalizado, pero es probable (o, posiblemente) más fácil de usar la autenticación básica para poder reutilizar la funcionalidad existente con clientes heredados.

    
respondido por el ndrix 29.03.2017 - 23:03
fuente
0

Tener solo un nombre de usuario potencialmente hace que sea mucho más fácil para alguien obtener acceso no autorizado. Tener nombres de usuario separados significa que solo hay un token válido por nombre de usuario. Si todos usan el mismo nombre de usuario, hay varios tokens que son válidos. El usuario no autorizado solo tiene que adivinar uno de ellos. No sugiero hacer esto, especialmente si la API proporciona acceso a cualquier tipo de datos confidenciales, o realiza un seguimiento de cualquier cosa relacionada con una cuenta específica.

    
respondido por el John Smith 29.03.2017 - 22:57
fuente

Lea otras preguntas en las etiquetas