Questions tagged [authentication]

A process of proving that an entity (commonly a user or organization) is who they claim to be, or who they were previously identified as being. Authentication does not guarantee that particular entity's identity absolutely, it just proves that they are the same agent that has previously successfully asserted their identity. There are three factors (types) of authentication, and a particular authentication process may combine two or more different factors.

Authentication is critical to systems security. It is the mechanism an authoritative system uses to validate a given entity's asserted identity (who they claim to be) is the same as that entity's stored credentials. Credentials must be previously stored for an entity either by the authoritative system, or by another trusted system, before authentication can occur.

Authentication is commonly used in real life in a number of different scenarios, for example a national border agent confirming a person's identity using a passport.

Authentication usually requires the entity being authenticated to produce one or more tokens. These tokens are then used, possibly alongside other properties or characteristics of the entity, to confirm their identity. An example of an authentication token is a password. These tokens can fall into three broad categories, or factors:

  • Something you know. This is the most commonly used authentication factor in electronic systems. It is most commonly implemented as a password or PIN (personal identification number). This is also the most commonly misused authentication factor. Many system require a secondary security question, such as your mother's maiden name, place you were born in or other such trivia. These all belong to this single factor, thus systems can as as many questions as they like and they are still single factor authentication; all the answers are something the entity would know.
  • Something you have. This is most commonly implemented as a formula number generator (like an RSA Key Fob) or a digital certificate (which can be stored on a smart card or less securely as a simple file on a computer). The Key Fobs, Smart Cards, and SSL Certificates are the most commonly used forms of this factor.
  • Something you are. This is commonly known as biometric security. Fingerprints and iris scans are the most common form when used with electronic access systems. Fingerprints and DNA are the most commonly used in law enforcement.

It should be noted that some security experts have reservations about the factor categories. Specifically all authentication factors are fed into the authentication mechanism as computerized information and are therefore subject to the same possible tampering or forgery as any other information. Digital Certificates for example are essentially passwords that are so long a normal person would never memorize it; it must be stored on a medium (thus termed "something you have"). Similarly anyone who has seen a spy movie has undoubtedly seen a fictional character copy a fingerprint or fake an iris scan. This is possible because the authentication mechanism is reliant on a digital reproduction of the physical item; a digital representation that can be duplicated.

There are many indirect authentication schemes as well. Kerberos is one of the most popular, you authenticate against a central store, which then gives you a token. The token can then be used to grant you access to other systems in lieu of the original authentication mechanism.

Authentication should not be confused with Authorization, which involves granting rights to a specific entity. Authorization schemes are commonly dependent on Authentication to ensure security, but are not the same.

See Wikipedia for more information about Authentication and Security.

2218 questions
36
votes
8 answers

Is there a command line two-factor authentication verification code generator?

I manage a server with two-factor authentication. I have to use the Google Authenticator iPhone app to get the 6-digit verification code to enter after entering the normal server password. The setup is described here:…
dan
  • 847
  • 2
  • 9
  • 11
36
votes
6 answers

Is it valid to have part of an IPv4 address set to zero?

I am working on a change in a Java EE application that would authenticate based on the user's IP address using ServletRequest.getRemoteAddr. We store IP address ranges (FROM_IP and TO_IP) in a database and the system would authenticate only if a…
Ritesh
  • 471
  • 1
  • 8
  • 10
34
votes
6 answers

Is there a Windows command line utility to verify user credentials?

On a Windows platform, is there any command line utility that I can pass a username, password domain name to in order to verify the credentials (or possibly give an error that the account is disabled, doesn't exist or expired)?
wiki
  • 493
  • 1
  • 4
  • 7
34
votes
4 answers

public key authentication fails ONLY when sshd is daemon

I have no clue on how this happens. The distro is Scientific Linux 6.1 and everything is set up to perform authentication via public key. Yet, when sshd is running as a daemon (service sshd start), it doesn't accept public keys. (To obtain this…
user666412
  • 443
  • 1
  • 4
  • 7
31
votes
2 answers

Public key authentication or similar over HTTP/HTTPS?

Is it possible to configure Apache, or some other web server, to use some kind of public-key authentication? What I would like, ideally, is to be able to give users access to a site without the need for a username/password, provided that they have…
ezzatron
  • 415
  • 1
  • 4
  • 6
30
votes
7 answers

SSH: Two Factor Authentication

I currently have a Ubuntu Server 12.04 running OpenSSH along with Samba and a few other services. At the current time I have public key authentication set up, and I'm wondering if it's possible to set up two factor authentication? I've been looking…
Concrete Donkey
  • 435
  • 5
  • 8
28
votes
6 answers

Google Chrome: passthrough Windows authentication

The I.T. dept is considering allowing installation and automated deployment of Google Chrome browser to 100+ desktops. One of the requirements is for domain credentials to be passed through. The desired behaviour is the same as Internet Explorer. An…
27
votes
2 answers

Understand PAM and NSS

In the last days I have set up some Linux system with LDAP authentication and everything works fine, but there's still something I can't really understand regarding NSS and PAM, also after a lot of research. Citing: NSS allows administrators to…
ColOfAbRiX
  • 1,080
  • 2
  • 12
  • 23
24
votes
2 answers

Authenticating OpenBSD against Active Directory

Edit: Reformatted this as Q&A. If anyone can change this from Community Wiki to a typical question, that's probably more appropriate as well. How can I authenticate OpenBSD against Active Directory?
sh-beta
  • 6,838
  • 7
  • 47
  • 66
24
votes
6 answers

Enable passwordless access to MySQL

How can I delete my password for MySQL? I dont want to have a password to connect to the database. My server is running Ubuntu.
Ben
  • 775
  • 4
  • 9
  • 19
23
votes
8 answers

Should we disable the root user?

Should we remove the root password, disable remote login and basically require adminstrators to use sudo to perform administrative actions?
jldugger
  • 14,342
  • 20
  • 77
  • 129
22
votes
2 answers

Troubleshooting Windows Authentication problems (no challenge) in IIS 7.5?

I know that there are thousands of reports of people having trouble getting Integrated Windows Authentication to work with IIS, but they all seem to lead to web pages that don't apply or solutions that I've already tried. I've deployed dozens of…
Aaronaught
  • 492
  • 2
  • 4
  • 13
22
votes
3 answers

How does Kerberos work with SSH?

Suppose I have four computers, Laptop, Server1, Server2, Kerberos server: I log in using PuTTY or SSH from L to S1, giving my username / password From S1 I then SSH to S2. No password is needed as Kerberos authenticates me Describe all the…
PhilR
  • 483
  • 1
  • 4
  • 15
22
votes
7 answers

Can I use SSH key authentication to log into a remote system with a different username?

Suppose I have a remote system named "remotesystem", and a user account "foouser" on that system. I know that on my local system, I can generate an SSH key pair as local user "foouser", put the public key in the "/home/foouser/.ssh/authorized_keys"…
Matt
  • 323
  • 1
  • 2
  • 6
22
votes
22 answers

Leaving my wifi open for the world

For my home I want to be a nice neighbor actually I have let my wifi open for the past maybe 6 or 7 years. I know that WEP, etc can be cracked within a couple of minutes but my neighbors son who works in IT told his mom and she told me that I am…
Thomaschaaf
  • 3,092
  • 5
  • 30
  • 24