SlideShare une entreprise Scribd logo
1  sur  140
Chapter 14: Protection
Chapter 14: Protection
•   Goals of Protection
•   Principles of Protection
•   Domain of Protection
•   Access Matrix
•   Implementation of Access Matrix
•   Access Control
•   Revocation of Access Rights
•   Capability-Based Systems
•   Language-Based Protection
Objectives
• Discuss the goals and principles of
  protection in a modern computer system
• Explain how protection domains combined
  with an access matrix are used to specify
  the resources a process may access
• Examine capability and language-based
  protection systems
Goals of Protection
• Operating system consists of a collection of
  objects, hardware or software

• Each object has a unique name and can be
  accessed through a well-defined set of operations

• Protection problem - ensure that each object is
  accessed correctly and only by those processes
  that are allowed to do so
Principles of Protection
• Guiding principle – principle of least
  privilege
  – Programs, users and systems should be given
    just enough privileges to perform their tasks
Domain Structure
• Access-right = <object-name, rights-set>
  where rights-set is a subset of all valid
  operations that can be performed on the
  object.

• Domain = set of access-rights
Domain Implementation (UNIX)
• System consists of 2 domains:
   – User
   – Supervisor

• UNIX
   – Domain = user-id
   – Domain switch accomplished via file system
      • Each file has associated with it a domain bit (setuid bit)
      • When file is executed and setuid = on, then user-id is set to
        owner of the file being executed. When execution completes
        user-id is reset
Domain Implementation
        (MULTICS)
• Let Di and Dj be any two domain rings
• If j < I ⇒ Di ⊆ Dj
Access Matrix
• View protection as a matrix (access matrix)

• Rows represent domains

• Columns represent objects

• Access(i, j) is the set of operations that a process
  executing in Domaini can invoke on Objectj
Access Matrix
Use of Access Matrix
• If a process in Domain Di tries to do “op” on
  object Oj, then “op” must be in the access matrix

• Can be expanded to dynamic protection
   – Operations to add, delete access rights
   – Special access rights:
      •   owner of Oi
      •   copy op from Oi to Oj
      •   control – Di can modify Dj access rights
      •   transfer – switch from domain Di to Dj
Use of Access Matrix (Cont)
• Access matrix design separates mechanism
  from policy
  – Mechanism
    • Operating system provides access-matrix + rules
    • If ensures that the matrix is only manipulated by
      authorized agents and that rules are strictly enforced
  – Policy
    • User dictates policy
    • Who can access what object and in what mode
Implementation of Access Matrix
• Each column = Access-control list for one
  object
  Defines who can perform what operation.
                          Domain 1 = Read, Write
                          Domain 2 = Read
                          Domain 3 = Read

                             
• Each Row = Capability List (like a key)
  Fore each domain, what operations allowed
  on what objects.
        Object 1 – Read
Objects




Figure B
Access Matrix with Copy Rights
Access Matrix With Owner
         Rights
Modified Access Matrix of
        Figure B
Access Control
• Protection can be applied to non-file resources
• Solaris 10 provides role-based access control
  (RBAC) to implement least privilege
   – Privilege is right to execute system call or use an option
     within a system call
   – Can be assigned to processes
   – Users assigned roles granting access to privileges and
     programs
Role-based Access Control in
         Solaris 10
Revocation of Access Rights
• Access List – Delete access rights from access list
   – Simple
   – Immediate

• Capability List – Scheme required to locate
  capability in the system before capability can be
  revoked
   –   Reacquisition
   –   Back-pointers
   –   Indirection
   –   Keys
Capability-Based Systems
• Hydra
  – Fixed set of access rights known to and interpreted by
    the system
  – Interpretation of user-defined rights performed solely
    by user's program; system provides access protection
    for use of these rights

• Cambridge CAP System
  – Data capability - provides standard read, write, execute
    of individual storage segments associated with object
  – Software capability -interpretation left to the
    subsystem, through its protected procedures
Language-Based Protection
• Specification of protection in a programming
  language allows the high-level description of
  policies for the allocation and use of resources

• Language implementation can provide software
  for protection enforcement when automatic
  hardware-supported checking is unavailable

• Interpret protection specifications to generate calls
  on whatever protection system is provided by the
  hardware and the operating system
Protection in Java 2
• Protection is handled by the Java Virtual Machine
  (JVM)

• A class is assigned a protection domain when it is
  loaded by the JVM

• The protection domain indicates what operations
  the class can (and cannot) perform

• If a library method is invoked that performs a
  privileged operation, the stack is inspected to
  ensure the operation can be performed by the
Stack Inspection
End of Chapter 14
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8
Os8

Contenu connexe

Tendances

Access Control Presentation
Access Control PresentationAccess Control Presentation
Access Control Presentation
Wajahat Rajab
 
2. access control
2. access control2. access control
2. access control
7wounders
 
3. security architecture and models
3. security architecture and models3. security architecture and models
3. security architecture and models
7wounders
 
Access control3
Access control3Access control3
Access control3
Awhydot
 
access-control-week-2
access-control-week-2access-control-week-2
access-control-week-2
jemtallon
 

Tendances (20)

Security models
Security models Security models
Security models
 
8 Access Control
8 Access Control8 Access Control
8 Access Control
 
Access Control Presentation
Access Control PresentationAccess Control Presentation
Access Control Presentation
 
2. access control
2. access control2. access control
2. access control
 
3. security architecture and models
3. security architecture and models3. security architecture and models
3. security architecture and models
 
Chapter23
Chapter23Chapter23
Chapter23
 
Access control3
Access control3Access control3
Access control3
 
access-control-week-2
access-control-week-2access-control-week-2
access-control-week-2
 
Security Architecture-Security Models
Security Architecture-Security ModelsSecurity Architecture-Security Models
Security Architecture-Security Models
 
02.security systems
02.security systems02.security systems
02.security systems
 
Database security and security in networks
Database security and security in networksDatabase security and security in networks
Database security and security in networks
 
Security and Integrity
Security and IntegritySecurity and Integrity
Security and Integrity
 
Distributed database security with discretionary access control
Distributed database security with discretionary access controlDistributed database security with discretionary access control
Distributed database security with discretionary access control
 
Dbms ii mca-ch12-security-2013
Dbms ii mca-ch12-security-2013Dbms ii mca-ch12-security-2013
Dbms ii mca-ch12-security-2013
 
security and privacy in dbms and in sql database
security and privacy in dbms and in sql databasesecurity and privacy in dbms and in sql database
security and privacy in dbms and in sql database
 
Data security authorization and access control
Data security  authorization and access controlData security  authorization and access control
Data security authorization and access control
 
Access Control Fundamentals
Access Control FundamentalsAccess Control Fundamentals
Access Control Fundamentals
 
01 database security ent-db
01  database security ent-db01  database security ent-db
01 database security ent-db
 
OSCh19
OSCh19OSCh19
OSCh19
 
Security Architecture
Security ArchitectureSecurity Architecture
Security Architecture
 

Similaire à Os8

Ch18 OS
Ch18 OSCh18 OS
Ch18 OS
C.U
 
21CSC202J Operating Systems-Unit-V.pptx.pdf
21CSC202J Operating Systems-Unit-V.pptx.pdf21CSC202J Operating Systems-Unit-V.pptx.pdf
21CSC202J Operating Systems-Unit-V.pptx.pdf
anusri1904
 

Similaire à Os8 (20)

Ch13 protection
Ch13   protectionCh13   protection
Ch13 protection
 
Protection
ProtectionProtection
Protection
 
Chapter 14 - Protection
Chapter 14 - ProtectionChapter 14 - Protection
Chapter 14 - Protection
 
Protection Domain and Access Matrix Model -Operating System
Protection Domain and Access Matrix Model -Operating SystemProtection Domain and Access Matrix Model -Operating System
Protection Domain and Access Matrix Model -Operating System
 
Ch18 OS
Ch18 OSCh18 OS
Ch18 OS
 
OSCh18
OSCh18OSCh18
OSCh18
 
OS_Ch18
OS_Ch18OS_Ch18
OS_Ch18
 
Least privilege, access control, operating system security
Least privilege, access control, operating system securityLeast privilege, access control, operating system security
Least privilege, access control, operating system security
 
Topic 7 access control
Topic 7 access controlTopic 7 access control
Topic 7 access control
 
access-control-basics-murat-kantarcioglu.pdf
access-control-basics-murat-kantarcioglu.pdfaccess-control-basics-murat-kantarcioglu.pdf
access-control-basics-murat-kantarcioglu.pdf
 
Protection and security of operating system
Protection and security of operating systemProtection and security of operating system
Protection and security of operating system
 
운영체제론 Ch18
운영체제론 Ch18운영체제론 Ch18
운영체제론 Ch18
 
Creating a fortress in your active directory environment
Creating a fortress in your active directory environmentCreating a fortress in your active directory environment
Creating a fortress in your active directory environment
 
Week No 13 Access Control Part 1.pptx
Week No 13 Access Control Part 1.pptxWeek No 13 Access Control Part 1.pptx
Week No 13 Access Control Part 1.pptx
 
21CSC202J Operating Systems-Unit-V.pptx.pdf
21CSC202J Operating Systems-Unit-V.pptx.pdf21CSC202J Operating Systems-Unit-V.pptx.pdf
21CSC202J Operating Systems-Unit-V.pptx.pdf
 
File Protection in Operating System
File Protection in Operating SystemFile Protection in Operating System
File Protection in Operating System
 
Week 13, Protection and Security.ppt
Week 13, Protection and Security.pptWeek 13, Protection and Security.ppt
Week 13, Protection and Security.ppt
 
Protection 80386
Protection 80386Protection 80386
Protection 80386
 
SELinux Johannesburg Linux User Group (JoziJUg)
SELinux Johannesburg Linux User Group (JoziJUg)SELinux Johannesburg Linux User Group (JoziJUg)
SELinux Johannesburg Linux User Group (JoziJUg)
 
SE Linux
SE LinuxSE Linux
SE Linux
 

Plus de gopal10scs185 (20)

Os5
Os5Os5
Os5
 
Os4
Os4Os4
Os4
 
Os1
Os1Os1
Os1
 
Os8
Os8Os8
Os8
 
Os7
Os7Os7
Os7
 
Os6
Os6Os6
Os6
 
Os4
Os4Os4
Os4
 
Os3
Os3Os3
Os3
 
Os2
Os2Os2
Os2
 
Unit4 desiging classes
Unit4 desiging classesUnit4 desiging classes
Unit4 desiging classes
 
Unit three identifying actors
Unit three  identifying actorsUnit three  identifying actors
Unit three identifying actors
 
Unit 5 testing
Unit 5 testingUnit 5 testing
Unit 5 testing
 
Unit 5
Unit 5Unit 5
Unit 5
 
Unit 5 usability and satisfaction test
Unit 5 usability and satisfaction testUnit 5 usability and satisfaction test
Unit 5 usability and satisfaction test
 
Unit 5 testing -software quality assurance
Unit 5  testing -software quality assuranceUnit 5  testing -software quality assurance
Unit 5 testing -software quality assurance
 
Unit 4
Unit 4Unit 4
Unit 4
 
Unit 4 designing classes
Unit 4  designing classesUnit 4  designing classes
Unit 4 designing classes
 
Unit 3 object analysis-classification
Unit 3 object analysis-classificationUnit 3 object analysis-classification
Unit 3 object analysis-classification
 
Unit 3 attributes, methods, relationships
Unit 3 attributes, methods, relationshipsUnit 3 attributes, methods, relationships
Unit 3 attributes, methods, relationships
 
Unit 3
Unit 3Unit 3
Unit 3
 

Dernier

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Dernier (20)

Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Buy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptxBuy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptx
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 

Os8

  • 1.
  • 3. Chapter 14: Protection • Goals of Protection • Principles of Protection • Domain of Protection • Access Matrix • Implementation of Access Matrix • Access Control • Revocation of Access Rights • Capability-Based Systems • Language-Based Protection
  • 4. Objectives • Discuss the goals and principles of protection in a modern computer system • Explain how protection domains combined with an access matrix are used to specify the resources a process may access • Examine capability and language-based protection systems
  • 5. Goals of Protection • Operating system consists of a collection of objects, hardware or software • Each object has a unique name and can be accessed through a well-defined set of operations • Protection problem - ensure that each object is accessed correctly and only by those processes that are allowed to do so
  • 6. Principles of Protection • Guiding principle – principle of least privilege – Programs, users and systems should be given just enough privileges to perform their tasks
  • 7. Domain Structure • Access-right = <object-name, rights-set> where rights-set is a subset of all valid operations that can be performed on the object. • Domain = set of access-rights
  • 8. Domain Implementation (UNIX) • System consists of 2 domains: – User – Supervisor • UNIX – Domain = user-id – Domain switch accomplished via file system • Each file has associated with it a domain bit (setuid bit) • When file is executed and setuid = on, then user-id is set to owner of the file being executed. When execution completes user-id is reset
  • 9. Domain Implementation (MULTICS) • Let Di and Dj be any two domain rings • If j < I ⇒ Di ⊆ Dj
  • 10. Access Matrix • View protection as a matrix (access matrix) • Rows represent domains • Columns represent objects • Access(i, j) is the set of operations that a process executing in Domaini can invoke on Objectj
  • 12. Use of Access Matrix • If a process in Domain Di tries to do “op” on object Oj, then “op” must be in the access matrix • Can be expanded to dynamic protection – Operations to add, delete access rights – Special access rights: • owner of Oi • copy op from Oi to Oj • control – Di can modify Dj access rights • transfer – switch from domain Di to Dj
  • 13. Use of Access Matrix (Cont) • Access matrix design separates mechanism from policy – Mechanism • Operating system provides access-matrix + rules • If ensures that the matrix is only manipulated by authorized agents and that rules are strictly enforced – Policy • User dictates policy • Who can access what object and in what mode
  • 14. Implementation of Access Matrix • Each column = Access-control list for one object Defines who can perform what operation. Domain 1 = Read, Write Domain 2 = Read Domain 3 = Read  • Each Row = Capability List (like a key) Fore each domain, what operations allowed on what objects. Object 1 – Read
  • 16. Access Matrix with Copy Rights
  • 17. Access Matrix With Owner Rights
  • 18. Modified Access Matrix of Figure B
  • 19. Access Control • Protection can be applied to non-file resources • Solaris 10 provides role-based access control (RBAC) to implement least privilege – Privilege is right to execute system call or use an option within a system call – Can be assigned to processes – Users assigned roles granting access to privileges and programs
  • 20. Role-based Access Control in Solaris 10
  • 21. Revocation of Access Rights • Access List – Delete access rights from access list – Simple – Immediate • Capability List – Scheme required to locate capability in the system before capability can be revoked – Reacquisition – Back-pointers – Indirection – Keys
  • 22. Capability-Based Systems • Hydra – Fixed set of access rights known to and interpreted by the system – Interpretation of user-defined rights performed solely by user's program; system provides access protection for use of these rights • Cambridge CAP System – Data capability - provides standard read, write, execute of individual storage segments associated with object – Software capability -interpretation left to the subsystem, through its protected procedures
  • 23. Language-Based Protection • Specification of protection in a programming language allows the high-level description of policies for the allocation and use of resources • Language implementation can provide software for protection enforcement when automatic hardware-supported checking is unavailable • Interpret protection specifications to generate calls on whatever protection system is provided by the hardware and the operating system
  • 24. Protection in Java 2 • Protection is handled by the Java Virtual Machine (JVM) • A class is assigned a protection domain when it is loaded by the JVM • The protection domain indicates what operations the class can (and cannot) perform • If a library method is invoked that performs a privileged operation, the stack is inspected to ensure the operation can be performed by the