SlideShare a Scribd company logo
Automating rights decisions
ELAG 2017, 08-06-2017
Jeffrey van der Hoeven, Rene Wiermer
info@kb.nl
The dream: In reality:
Open access to
everything
for
everybody!
Limited access
due to
copyright
&
contracts
Examples of restrictions (1)
1600 1930 1945 1980 2017
open closed
1400 1900 2017
open restricted
1995
Time ->
digitized
newspapers
digitized
books
no
download
Examples of restrictions (2)
Publisher AReading room only
Journal titels ->
open API key account
datasets
Scientific articles
Publisher B
Publisher Z
Examples of restrictions (3)
Copyright
infringement on
photographs
Newspaper X Newspaper Y
What can I do
with this
publication
about quantum
physics?
Do I have access to this ?
What can I do with it ?
Access to sensitive material
User interaction. Here: Accepting terms of uses
Needs 1: more information to the end user
- How do I get access ?
- What can I do with it ?
Improve UX with standardization of rights decisions
Needs 2: One system for multiple applications
- Several websites: Delpher, Geheugen van Nederland, Staten
Generaal Digitaal
- Several API’s: URN-Resolver, OAI-PMH, Search services …
Centralize access decisions for better compliance, management
and reporting
One change = immediately visible in each application
Needs 3: reducing our digitization backlog
- We have a lot of digital content that requires certain restrictions
- How can we make this accessible to anybody who is allowed to
see it ?
- We had an “on/off” infrastructure for most of our content
- Either accessible for everybody or not at all
- Not flexible enough, blocked workflows
Automation of rights decisions based on
- Metadata (Publication date, authors, publisher, type of
material..)
- Location (e.g. reading room)
- Type of user (e.g. researcher)
Simple approach: extra metadata field ?
- For example
- <rights> FREE|RESTRICTED|CLOSED|... </rights>
- <license> CC0|CustomContract|... </license>
- Make decision based on the value of that field
- Works probably fine in a lot scenarios
- But:
- Does not scale with variation depending on context
- “Free for users of type researcher and visitors to the reading room, but not outside
of it”
- Needs maintenance over time
-Missing: why was this decision made ?
Instead: policies as code
- Policy: formalized set of rules regarding a collection of objects
- Decided at runtime -> decisions can change over time
- Follows general lines of thought of the organization: legal
obligations, contracts with publishers, management decisions
Example: Simplest policy
All is freely accesible
return Decision.permit();
Still simple policy
Role-based access (from API-key, username/password auth…)
if (context.roles.contains("DS_METADATA_DTS"))
return Decision.permit();
Access based on publication date
static GregorianCalendar metadataFreeDate=new GregorianCalendar(1940,Calendar.JANUARY,1);
if (attributes.getMetadata().getPublicationDate()?.before(metadataFreeDate.getTime())) {
return Decision.permit();
}
Fallback
return Decision.denied();
Example: Books
Check for location
if (context.location.equals("READING_ROOM")) {
...
}
Demand measures to prevent downloads from frontend
if (attributes.listContainsValue("boeken-leeszaal-kopieerbeveiliging", "ppn",
attributes.getMetadata().getPpn()) ) {
return Decision.permit(new Obligation("DoNotDownload"),usageRights);
}
Check for death dates of all contributors
if (DateChecks.allAuthorsDeadLongerThan(attributes.getMetadata(),authorDeathDateLimit)) {
return Decision.permit(usageRights);
}
Decisions
Input: Identifier, Metadata, Location, Authorization
End result of a policy decisions:
- PERMIT
- DENIED
- NOT APPLICABLE
additional attributes:
- obligations: things the endpoint has to enforce
- advices: things the endpoint might need to improve UX
Ex: PERMIT (obligation:”DoNotDownload”, advice:”OnlyInReadingRoom”)
Diagram by David Brossard under a CC-BY 3.0 license
Enforce
Decide
Administer Metadata
Context
Enforce
Decide
Administer
Metadata
Context
Image server OAI-PMHObject store
PDP webservice
RDBMS Metadata HTTP Request
Admin/Reporting
GUI
Policy Scripts
Groovy
Authorization
LDAP
Architecture: XACML (sort of)
- Attribute Based Access Control (ABAC)
- Follows XACML reference architecture
- … but not the language (cumbersome, slow and restricted)
Technology
- Write the policies in an embedded scripting language (Groovy)
- Fast (in comparison to XACML language implementations)
- Able to be adopted/managed outside of core development team
- still: reuse of existing development toolchain
- Automated testing !
- Deployed as central REST service
- Serves multiple applications
Reporting and testing
Collections Policies Digital Objects Policies Metadata
Reporting and testing
Limitations
- Search filtering on access: combination with dynamic decisions
- Which objects am I allowed to use ?
- Export of access information to other systems (e.g. WorldCat)
Possible mitigations
- Compromises on dynamic decisions (short term)
- Move from slow ETL to event-based architectures (longer term)
Current status & results
- Stepwise in production since Mid 2016
- New objects are becoming available
- Copyright claims are easier to handle
- Clearer insight into current status of collection
- Better insight into needs for partnership contracts
- Impulses for better metadata storage/access infrastructure
175M requests per month
+/- 6 million a day
60+ million pages
under control by
access management
Any questions?
END
About
- Managing digital collections with multiple licenses and access
policies
- Technical choices that fit our organisational needs
Not about
- DRM and copy protection
- Usage of closed proprietary systems
Motivation
- As a public service organisation we want: access as far as
possible
- Limit of possibilities
- Licenses
- Contractual obligations
- Governmental and organisational policies
- Copyright status
- A simple yes or no is not always enough; we need
- a clear guideline for the user: what can I do with it and how do I get
access ?
- automation of management: we want to be able to scale and still be
compliant
Crossing the domains: communication
- Define your terms: Collection, policy, decision … make sure to
communicate them clearly
- Make sure contracts and managerial decisions can be translated to
the technical reality.
- Offer protection and guarantee options for future contracts
- Make compliance easier through monitoring + reporting
- Use of examples + flow diagrams
ONIX-PL: machine-readable contracts
Machine-readable, but not actionable
Our problems
- Multiple applications give access to collections
- ideally centralised decision making and reporting
- Decisions depend on context: user, location, time
- Flexible to allow for individual interventions
- Clearer insight necessary why things are hidden away
Click to adjust
• Subject 1
• Subject 2
• Subject 3
Click to adjust
• Subject 1
• Subject 2
Name table

More Related Content

Similar to Automating rights decision elag 2017

ALA Cloud Computing Introduction 2015
ALA Cloud Computing Introduction 2015  ALA Cloud Computing Introduction 2015
ALA Cloud Computing Introduction 2015
Krista Godfrey
 
Session 1.1 dalicc - data licenses clearance center
Session 1.1   dalicc - data licenses clearance centerSession 1.1   dalicc - data licenses clearance center
Session 1.1 dalicc - data licenses clearance center
semanticsconference
 
Cloud Computing presentation by Lisa Abe at the Canadian IT Lawyers Associat...
Cloud Computing  presentation by Lisa Abe at the Canadian IT Lawyers Associat...Cloud Computing  presentation by Lisa Abe at the Canadian IT Lawyers Associat...
Cloud Computing presentation by Lisa Abe at the Canadian IT Lawyers Associat...
lisaabe
 
Monitoring as an entry point for collaboration
Monitoring as an entry point for collaborationMonitoring as an entry point for collaboration
Monitoring as an entry point for collaboration
Julien Pivotto
 
Cms pres
Cms presCms pres
Cms pres
Mario Noble
 
Bitkom Cray presentation - on HPC affecting big data analytics in FS
Bitkom Cray presentation - on HPC affecting big data analytics in FSBitkom Cray presentation - on HPC affecting big data analytics in FS
Bitkom Cray presentation - on HPC affecting big data analytics in FS
Philip Filleul
 
Distributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applicationsDistributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applications
Jaime Martin Losa
 
Cloud Busting: Understanding Cloud-based Digital Forensics
Cloud Busting: Understanding Cloud-based Digital ForensicsCloud Busting: Understanding Cloud-based Digital Forensics
Cloud Busting: Understanding Cloud-based Digital Forensics
Kerry Hazelton
 
Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...
Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...
Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...
MongoDB
 
Apricot2017 Request tracing in distributed environment
Apricot2017 Request tracing in distributed environmentApricot2017 Request tracing in distributed environment
Apricot2017 Request tracing in distributed environment
Hieu LE ☁
 
BigData Analysis
BigData AnalysisBigData Analysis
SAAS - Software as a Service
SAAS - Software as a ServiceSAAS - Software as a Service
SAAS - Software as a Service
Dev S Paul
 
Chapter 1.pdf
Chapter 1.pdfChapter 1.pdf
Chapter 1.pdf
khan593595
 
The Moving Code Project - Matthias Müller
The Moving Code Project - Matthias MüllerThe Moving Code Project - Matthias Müller
The Moving Code Project - Matthias Müller
Luis_de_Sousa
 
Big Data
Big DataBig Data
Big Data
Neha Mehta
 
Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)
Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)
Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)
EUDAT
 
Data EcoSystem 2.0
Data EcoSystem 2.0Data EcoSystem 2.0
Data EcoSystem 2.0
Alluxio, Inc.
 
Logging/Request Tracing in Distributed Environment
Logging/Request Tracing in Distributed EnvironmentLogging/Request Tracing in Distributed Environment
Logging/Request Tracing in Distributed Environment
APNIC
 
Impact of cloud computing on FOSS editors
Impact of cloud computing on FOSS editorsImpact of cloud computing on FOSS editors
Impact of cloud computing on FOSS editors
Robert Viseur
 
Simple Workload and Application Portability (SWAP) for Cloud Computing
Simple Workload and Application Portability (SWAP) for Cloud ComputingSimple Workload and Application Portability (SWAP) for Cloud Computing
Simple Workload and Application Portability (SWAP) for Cloud Computing
Sam Johnston
 

Similar to Automating rights decision elag 2017 (20)

ALA Cloud Computing Introduction 2015
ALA Cloud Computing Introduction 2015  ALA Cloud Computing Introduction 2015
ALA Cloud Computing Introduction 2015
 
Session 1.1 dalicc - data licenses clearance center
Session 1.1   dalicc - data licenses clearance centerSession 1.1   dalicc - data licenses clearance center
Session 1.1 dalicc - data licenses clearance center
 
Cloud Computing presentation by Lisa Abe at the Canadian IT Lawyers Associat...
Cloud Computing  presentation by Lisa Abe at the Canadian IT Lawyers Associat...Cloud Computing  presentation by Lisa Abe at the Canadian IT Lawyers Associat...
Cloud Computing presentation by Lisa Abe at the Canadian IT Lawyers Associat...
 
Monitoring as an entry point for collaboration
Monitoring as an entry point for collaborationMonitoring as an entry point for collaboration
Monitoring as an entry point for collaboration
 
Cms pres
Cms presCms pres
Cms pres
 
Bitkom Cray presentation - on HPC affecting big data analytics in FS
Bitkom Cray presentation - on HPC affecting big data analytics in FSBitkom Cray presentation - on HPC affecting big data analytics in FS
Bitkom Cray presentation - on HPC affecting big data analytics in FS
 
Distributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applicationsDistributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applications
 
Cloud Busting: Understanding Cloud-based Digital Forensics
Cloud Busting: Understanding Cloud-based Digital ForensicsCloud Busting: Understanding Cloud-based Digital Forensics
Cloud Busting: Understanding Cloud-based Digital Forensics
 
Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...
Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...
Bangalore Executive Seminar 2015: Case Study - Text Analysis on MongoDB for a...
 
Apricot2017 Request tracing in distributed environment
Apricot2017 Request tracing in distributed environmentApricot2017 Request tracing in distributed environment
Apricot2017 Request tracing in distributed environment
 
BigData Analysis
BigData AnalysisBigData Analysis
BigData Analysis
 
SAAS - Software as a Service
SAAS - Software as a ServiceSAAS - Software as a Service
SAAS - Software as a Service
 
Chapter 1.pdf
Chapter 1.pdfChapter 1.pdf
Chapter 1.pdf
 
The Moving Code Project - Matthias Müller
The Moving Code Project - Matthias MüllerThe Moving Code Project - Matthias Müller
The Moving Code Project - Matthias Müller
 
Big Data
Big DataBig Data
Big Data
 
Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)
Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)
Linking HPC to Data Management - EUDAT Summer School (Giuseppe Fiameni, CINECA)
 
Data EcoSystem 2.0
Data EcoSystem 2.0Data EcoSystem 2.0
Data EcoSystem 2.0
 
Logging/Request Tracing in Distributed Environment
Logging/Request Tracing in Distributed EnvironmentLogging/Request Tracing in Distributed Environment
Logging/Request Tracing in Distributed Environment
 
Impact of cloud computing on FOSS editors
Impact of cloud computing on FOSS editorsImpact of cloud computing on FOSS editors
Impact of cloud computing on FOSS editors
 
Simple Workload and Application Portability (SWAP) for Cloud Computing
Simple Workload and Application Portability (SWAP) for Cloud ComputingSimple Workload and Application Portability (SWAP) for Cloud Computing
Simple Workload and Application Portability (SWAP) for Cloud Computing
 

More from KBNLResearch

Theo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigeren
Theo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigerenTheo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigeren
Theo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigeren
KBNLResearch
 
Rene Voorburg - Using KB APIs to collect data
Rene Voorburg - Using KB APIs to collect dataRene Voorburg - Using KB APIs to collect data
Rene Voorburg - Using KB APIs to collect data
KBNLResearch
 
Melvin Wevers - Computer vision and advertisements
Melvin Wevers - Computer vision and advertisementsMelvin Wevers - Computer vision and advertisements
Melvin Wevers - Computer vision and advertisements
KBNLResearch
 
Lotte Wilms - KB Lab as hub
Lotte Wilms - KB Lab as hubLotte Wilms - KB Lab as hub
Lotte Wilms - KB Lab as hub
KBNLResearch
 
Martijn Kleppe - KBK-1M dataset
Martijn Kleppe - KBK-1M datasetMartijn Kleppe - KBK-1M dataset
Martijn Kleppe - KBK-1M dataset
KBNLResearch
 
Pim Huijnen - Keyword generator & dictionary viewer
Pim Huijnen - Keyword generator & dictionary viewerPim Huijnen - Keyword generator & dictionary viewer
Pim Huijnen - Keyword generator & dictionary viewer
KBNLResearch
 
Frank Harbers - Automatic genre classification of historical newspaper articles
Frank Harbers - Automatic genre classification of historical newspaper articles Frank Harbers - Automatic genre classification of historical newspaper articles
Frank Harbers - Automatic genre classification of historical newspaper articles
KBNLResearch
 

More from KBNLResearch (7)

Theo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigeren
Theo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigerenTheo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigeren
Theo van Veen - Verrijkingen in Delpher: genereren, gebruiken en corrigeren
 
Rene Voorburg - Using KB APIs to collect data
Rene Voorburg - Using KB APIs to collect dataRene Voorburg - Using KB APIs to collect data
Rene Voorburg - Using KB APIs to collect data
 
Melvin Wevers - Computer vision and advertisements
Melvin Wevers - Computer vision and advertisementsMelvin Wevers - Computer vision and advertisements
Melvin Wevers - Computer vision and advertisements
 
Lotte Wilms - KB Lab as hub
Lotte Wilms - KB Lab as hubLotte Wilms - KB Lab as hub
Lotte Wilms - KB Lab as hub
 
Martijn Kleppe - KBK-1M dataset
Martijn Kleppe - KBK-1M datasetMartijn Kleppe - KBK-1M dataset
Martijn Kleppe - KBK-1M dataset
 
Pim Huijnen - Keyword generator & dictionary viewer
Pim Huijnen - Keyword generator & dictionary viewerPim Huijnen - Keyword generator & dictionary viewer
Pim Huijnen - Keyword generator & dictionary viewer
 
Frank Harbers - Automatic genre classification of historical newspaper articles
Frank Harbers - Automatic genre classification of historical newspaper articles Frank Harbers - Automatic genre classification of historical newspaper articles
Frank Harbers - Automatic genre classification of historical newspaper articles
 

Recently uploaded

GBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of ProteinsGBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of Proteins
Areesha Ahmad
 
Modelo de slide quimica para powerpoint
Modelo  de slide quimica para powerpointModelo  de slide quimica para powerpoint
Modelo de slide quimica para powerpoint
Karen593256
 
The binding of cosmological structures by massless topological defects
The binding of cosmological structures by massless topological defectsThe binding of cosmological structures by massless topological defects
The binding of cosmological structures by massless topological defects
Sérgio Sacani
 
在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样
在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样
在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样
vluwdy49
 
Basics of crystallography, crystal systems, classes and different forms
Basics of crystallography, crystal systems, classes and different formsBasics of crystallography, crystal systems, classes and different forms
Basics of crystallography, crystal systems, classes and different forms
MaheshaNanjegowda
 
Pests of Storage_Identification_Dr.UPR.pdf
Pests of Storage_Identification_Dr.UPR.pdfPests of Storage_Identification_Dr.UPR.pdf
Pests of Storage_Identification_Dr.UPR.pdf
PirithiRaju
 
23PH301 - Optics - Optical Lenses.pptx
23PH301 - Optics  -  Optical Lenses.pptx23PH301 - Optics  -  Optical Lenses.pptx
23PH301 - Optics - Optical Lenses.pptx
RDhivya6
 
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
hozt8xgk
 
Randomised Optimisation Algorithms in DAPHNE
Randomised Optimisation Algorithms in DAPHNERandomised Optimisation Algorithms in DAPHNE
Randomised Optimisation Algorithms in DAPHNE
University of Maribor
 
ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...
ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...
ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...
Advanced-Concepts-Team
 
EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...
EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...
EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...
Sérgio Sacani
 
(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...
(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...
(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...
Scintica Instrumentation
 
Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.
Aditi Bajpai
 
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
frank0071
 
aziz sancar nobel prize winner: from mardin to nobel
aziz sancar nobel prize winner: from mardin to nobelaziz sancar nobel prize winner: from mardin to nobel
aziz sancar nobel prize winner: from mardin to nobel
İsa Badur
 
Applied Science: Thermodynamics, Laws & Methodology.pdf
Applied Science: Thermodynamics, Laws & Methodology.pdfApplied Science: Thermodynamics, Laws & Methodology.pdf
Applied Science: Thermodynamics, Laws & Methodology.pdf
University of Hertfordshire
 
Mending Clothing to Support Sustainable Fashion_CIMaR 2024.pdf
Mending Clothing to Support Sustainable Fashion_CIMaR 2024.pdfMending Clothing to Support Sustainable Fashion_CIMaR 2024.pdf
Mending Clothing to Support Sustainable Fashion_CIMaR 2024.pdf
Selcen Ozturkcan
 
The cost of acquiring information by natural selection
The cost of acquiring information by natural selectionThe cost of acquiring information by natural selection
The cost of acquiring information by natural selection
Carl Bergstrom
 
Compexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titrationCompexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titration
Vandana Devesh Sharma
 
Gadgets for management of stored product pests_Dr.UPR.pdf
Gadgets for management of stored product pests_Dr.UPR.pdfGadgets for management of stored product pests_Dr.UPR.pdf
Gadgets for management of stored product pests_Dr.UPR.pdf
PirithiRaju
 

Recently uploaded (20)

GBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of ProteinsGBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of Proteins
 
Modelo de slide quimica para powerpoint
Modelo  de slide quimica para powerpointModelo  de slide quimica para powerpoint
Modelo de slide quimica para powerpoint
 
The binding of cosmological structures by massless topological defects
The binding of cosmological structures by massless topological defectsThe binding of cosmological structures by massless topological defects
The binding of cosmological structures by massless topological defects
 
在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样
在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样
在线办理(salfor毕业证书)索尔福德大学毕业证毕业完成信一模一样
 
Basics of crystallography, crystal systems, classes and different forms
Basics of crystallography, crystal systems, classes and different formsBasics of crystallography, crystal systems, classes and different forms
Basics of crystallography, crystal systems, classes and different forms
 
Pests of Storage_Identification_Dr.UPR.pdf
Pests of Storage_Identification_Dr.UPR.pdfPests of Storage_Identification_Dr.UPR.pdf
Pests of Storage_Identification_Dr.UPR.pdf
 
23PH301 - Optics - Optical Lenses.pptx
23PH301 - Optics  -  Optical Lenses.pptx23PH301 - Optics  -  Optical Lenses.pptx
23PH301 - Optics - Optical Lenses.pptx
 
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
 
Randomised Optimisation Algorithms in DAPHNE
Randomised Optimisation Algorithms in DAPHNERandomised Optimisation Algorithms in DAPHNE
Randomised Optimisation Algorithms in DAPHNE
 
ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...
ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...
ESA/ACT Science Coffee: Diego Blas - Gravitational wave detection with orbita...
 
EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...
EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...
EWOCS-I: The catalog of X-ray sources in Westerlund 1 from the Extended Weste...
 
(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...
(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...
(June 12, 2024) Webinar: Development of PET theranostics targeting the molecu...
 
Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.
 
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
 
aziz sancar nobel prize winner: from mardin to nobel
aziz sancar nobel prize winner: from mardin to nobelaziz sancar nobel prize winner: from mardin to nobel
aziz sancar nobel prize winner: from mardin to nobel
 
Applied Science: Thermodynamics, Laws & Methodology.pdf
Applied Science: Thermodynamics, Laws & Methodology.pdfApplied Science: Thermodynamics, Laws & Methodology.pdf
Applied Science: Thermodynamics, Laws & Methodology.pdf
 
Mending Clothing to Support Sustainable Fashion_CIMaR 2024.pdf
Mending Clothing to Support Sustainable Fashion_CIMaR 2024.pdfMending Clothing to Support Sustainable Fashion_CIMaR 2024.pdf
Mending Clothing to Support Sustainable Fashion_CIMaR 2024.pdf
 
The cost of acquiring information by natural selection
The cost of acquiring information by natural selectionThe cost of acquiring information by natural selection
The cost of acquiring information by natural selection
 
Compexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titrationCompexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titration
 
Gadgets for management of stored product pests_Dr.UPR.pdf
Gadgets for management of stored product pests_Dr.UPR.pdfGadgets for management of stored product pests_Dr.UPR.pdf
Gadgets for management of stored product pests_Dr.UPR.pdf
 

Automating rights decision elag 2017

  • 1. Automating rights decisions ELAG 2017, 08-06-2017 Jeffrey van der Hoeven, Rene Wiermer info@kb.nl
  • 2. The dream: In reality: Open access to everything for everybody! Limited access due to copyright & contracts
  • 3. Examples of restrictions (1) 1600 1930 1945 1980 2017 open closed 1400 1900 2017 open restricted 1995 Time -> digitized newspapers digitized books no download
  • 4. Examples of restrictions (2) Publisher AReading room only Journal titels -> open API key account datasets Scientific articles Publisher B Publisher Z
  • 5. Examples of restrictions (3) Copyright infringement on photographs Newspaper X Newspaper Y
  • 6. What can I do with this publication about quantum physics?
  • 7.
  • 8. Do I have access to this ?
  • 9. What can I do with it ?
  • 11. User interaction. Here: Accepting terms of uses
  • 12. Needs 1: more information to the end user - How do I get access ? - What can I do with it ? Improve UX with standardization of rights decisions
  • 13. Needs 2: One system for multiple applications - Several websites: Delpher, Geheugen van Nederland, Staten Generaal Digitaal - Several API’s: URN-Resolver, OAI-PMH, Search services … Centralize access decisions for better compliance, management and reporting One change = immediately visible in each application
  • 14. Needs 3: reducing our digitization backlog - We have a lot of digital content that requires certain restrictions - How can we make this accessible to anybody who is allowed to see it ? - We had an “on/off” infrastructure for most of our content - Either accessible for everybody or not at all - Not flexible enough, blocked workflows Automation of rights decisions based on - Metadata (Publication date, authors, publisher, type of material..) - Location (e.g. reading room) - Type of user (e.g. researcher)
  • 15.
  • 16. Simple approach: extra metadata field ? - For example - <rights> FREE|RESTRICTED|CLOSED|... </rights> - <license> CC0|CustomContract|... </license> - Make decision based on the value of that field - Works probably fine in a lot scenarios - But: - Does not scale with variation depending on context - “Free for users of type researcher and visitors to the reading room, but not outside of it” - Needs maintenance over time -Missing: why was this decision made ?
  • 17. Instead: policies as code - Policy: formalized set of rules regarding a collection of objects - Decided at runtime -> decisions can change over time - Follows general lines of thought of the organization: legal obligations, contracts with publishers, management decisions
  • 18. Example: Simplest policy All is freely accesible return Decision.permit();
  • 19. Still simple policy Role-based access (from API-key, username/password auth…) if (context.roles.contains("DS_METADATA_DTS")) return Decision.permit(); Access based on publication date static GregorianCalendar metadataFreeDate=new GregorianCalendar(1940,Calendar.JANUARY,1); if (attributes.getMetadata().getPublicationDate()?.before(metadataFreeDate.getTime())) { return Decision.permit(); } Fallback return Decision.denied();
  • 20. Example: Books Check for location if (context.location.equals("READING_ROOM")) { ... } Demand measures to prevent downloads from frontend if (attributes.listContainsValue("boeken-leeszaal-kopieerbeveiliging", "ppn", attributes.getMetadata().getPpn()) ) { return Decision.permit(new Obligation("DoNotDownload"),usageRights); } Check for death dates of all contributors if (DateChecks.allAuthorsDeadLongerThan(attributes.getMetadata(),authorDeathDateLimit)) { return Decision.permit(usageRights); }
  • 21. Decisions Input: Identifier, Metadata, Location, Authorization End result of a policy decisions: - PERMIT - DENIED - NOT APPLICABLE additional attributes: - obligations: things the endpoint has to enforce - advices: things the endpoint might need to improve UX Ex: PERMIT (obligation:”DoNotDownload”, advice:”OnlyInReadingRoom”)
  • 22. Diagram by David Brossard under a CC-BY 3.0 license Enforce Decide Administer Metadata Context
  • 23. Enforce Decide Administer Metadata Context Image server OAI-PMHObject store PDP webservice RDBMS Metadata HTTP Request Admin/Reporting GUI Policy Scripts Groovy Authorization LDAP
  • 24. Architecture: XACML (sort of) - Attribute Based Access Control (ABAC) - Follows XACML reference architecture - … but not the language (cumbersome, slow and restricted)
  • 25. Technology - Write the policies in an embedded scripting language (Groovy) - Fast (in comparison to XACML language implementations) - Able to be adopted/managed outside of core development team - still: reuse of existing development toolchain - Automated testing ! - Deployed as central REST service - Serves multiple applications
  • 26. Reporting and testing Collections Policies Digital Objects Policies Metadata
  • 28. Limitations - Search filtering on access: combination with dynamic decisions - Which objects am I allowed to use ? - Export of access information to other systems (e.g. WorldCat) Possible mitigations - Compromises on dynamic decisions (short term) - Move from slow ETL to event-based architectures (longer term)
  • 29. Current status & results - Stepwise in production since Mid 2016 - New objects are becoming available - Copyright claims are easier to handle - Clearer insight into current status of collection - Better insight into needs for partnership contracts - Impulses for better metadata storage/access infrastructure 175M requests per month +/- 6 million a day 60+ million pages under control by access management
  • 31. END
  • 32. About - Managing digital collections with multiple licenses and access policies - Technical choices that fit our organisational needs Not about - DRM and copy protection - Usage of closed proprietary systems
  • 33. Motivation - As a public service organisation we want: access as far as possible - Limit of possibilities - Licenses - Contractual obligations - Governmental and organisational policies - Copyright status - A simple yes or no is not always enough; we need - a clear guideline for the user: what can I do with it and how do I get access ? - automation of management: we want to be able to scale and still be compliant
  • 34. Crossing the domains: communication - Define your terms: Collection, policy, decision … make sure to communicate them clearly - Make sure contracts and managerial decisions can be translated to the technical reality. - Offer protection and guarantee options for future contracts - Make compliance easier through monitoring + reporting - Use of examples + flow diagrams
  • 36. Our problems - Multiple applications give access to collections - ideally centralised decision making and reporting - Decisions depend on context: user, location, time - Flexible to allow for individual interventions - Clearer insight necessary why things are hidden away
  • 37. Click to adjust • Subject 1 • Subject 2 • Subject 3
  • 38. Click to adjust • Subject 1 • Subject 2