This next video covers the principle of least privilege.
This is the one that you probably know,
although you don't realize it.
It's simply, if you've ever heard the phrase need to
know, that's least privilege.
You only are told what you need to know.
In the context of computers it means a subject,
which is a process or a user or an actor of some kind,
is only given those rights or
privileges that it needs to complete the task.
What's important here is that
the functionality is what
controls the rights, not the identity.
So, in other words, if I need to
read file one and write file two,
following this principle, the process I use
to do that would have no access to file three.
In addition, there may be
situations in which for
a short period of time I need extra rights.
For example, on a Linux system if I want to open port 25,
I can only open that port as root.
But I'm a mail handler,
so after that I don't need root privileges anymore.
When my program starts up,
it grabs root privileges, opens port 25,
and then drops root privileges to the mail user.
That's another example of least privilege,
just throw it away when you don't need it.
Now, there's another principle that's
closely related to this.
It's called POLA, Principle of Least Authority.
Now, POLA and least privilege
are often seen as exactly the same things.
However, some people do make
a distinction and the distinction is quite interesting.
Principle of least privilege speaks to permissions.
It says, what can I do to an object, a file?
Doesn't say anything about,
what can I have you do to it?
It's all very direct.
What can I do?
Authority controls what influence
I have over other subjects.
So, in other words, can
I control how you interact with that object,
for example, or can I
control how something indirectly affects that file?
In that case,
authority is slightly different than permission,
and so POLA would speak to
the authority and least privilege to the permissions.
That distinction is not widely recognized yet.
So, if you hear POLA and you think least privilege,
you're either dead on or very close,
close enough for our practical purposes
unless you're a system developer.
All right, now, you'll
see this in an exercise in a little bit.
But this puzzle asks whether or not any Unix-like
system like FreeBSD or Linux or so forth or Windows,
does that enforce least privilege?
Think about that for about half a minute.
The answer is basically
very direct and we've talked about this.