SlideShare a Scribd company logo
1 of 21
Mixed Drink
                     Consuming UW web services in Drupal




Ryan Ositis (rositis@uw.edu)
Zach Griswold (zachgris@uw.edu)
Lots of data!
• People

• Courses

• Groups

• Academic calendar

• Lots more: http://webservices.washington.edu/
  service/browse/
Our Focus

• People web service for directories

• Course data for website listings and
  directories

• Groups data for authorization
Needs

• No calling into web services every time data
  is needed

• Store data "the Drupal way"

• Reusable and extensible

• Secure
"The Drupal Way"
• No direct database code

• Reusable and extensible

• Get things done for free
    Search / filtering

    Versioning

    Views!
Secure

• Sensitive data

• Must keep certificates secure

• What if Drupal / Apache was compromised?
Our Solution:
Our Solution(s):
Our Solution(s):

EasyCCK             UW
  API            Courses
          LTS
UW GWS              UW
 Auth             People
LTS
• "Locally Trusted Service"

• Plugin-Model
  • Register to handle "commands"

  • Provide data to clients

  • Easy to consume more data in the future

• Secure
  • Manages certificates

  • 1024 bit RSA + 256 bit AES
Did you say Daemon?
Why’d you do that?
Security. Really.
LTS

• Current modules / plugins
 • UW People

 • UW GWS Auth

 • UW Courses
UW People

• Really 2 modules: UW People & Directory
  Profile

• Pulls data from the Person Web Service (LTS)
  into nodes (EasyCCK API)

• Views!
UW People
 • Content Types
  • Person

  • Student

  • Employee

  • Simplified Profile*

  • Extended Profile*
UW People
 • Fields
  • Education

  • Project

  • Key Work

  • Recognition

  • & more!
UW People

• Automatic

• All data is in nodes

• Views, theming layer, search, caching, etc... -
  everything Drupal has to offer for nodes
Projects


         https://drupal.ischool.uw.edu/
                    projects


Zach Griswold (zachgris@uw.edu)
Ryan Ositis (rositis@uw.edu)
Fin


                                  Questions?



Ryan Ositis (rositis@uw.edu)
Zach Griswold (zachgris@uw.edu)
Presentation

More Related Content

What's hot

SDL Trados Studio 2014 - Working with advanced file types
SDL Trados Studio 2014 - Working with advanced file typesSDL Trados Studio 2014 - Working with advanced file types
SDL Trados Studio 2014 - Working with advanced file typesSDL Trados
 
Keeping up with research using rss and alerts
Keeping up with research using rss and alertsKeeping up with research using rss and alerts
Keeping up with research using rss and alertsPamela Carson
 
An Introduction to CSS Frameworks
An Introduction to CSS FrameworksAn Introduction to CSS Frameworks
An Introduction to CSS FrameworksAdrian Westlake
 
How to get started with office 365 development
How to get started with office 365 developmentHow to get started with office 365 development
How to get started with office 365 developmentJasjit Chopra
 
MDST 3703 F10 Seminar 10
MDST 3703 F10 Seminar 10MDST 3703 F10 Seminar 10
MDST 3703 F10 Seminar 10Rafael Alvarado
 
Journey to the center of SharePoint
Journey to the center of SharePointJourney to the center of SharePoint
Journey to the center of SharePointvasya10
 
ACDA OF MINNESOTA WEBSITE PRESENTATION
ACDA OF MINNESOTA WEBSITE PRESENTATIONACDA OF MINNESOTA WEBSITE PRESENTATION
ACDA OF MINNESOTA WEBSITE PRESENTATIONNewDayWebDesign
 
Introduction to Web Development - CSS
Introduction to Web Development - CSSIntroduction to Web Development - CSS
Introduction to Web Development - CSSSadhanaParameswaran
 
Salsita Tech Talk - Scalable CSS Architecture
Salsita Tech Talk - Scalable CSS ArchitectureSalsita Tech Talk - Scalable CSS Architecture
Salsita Tech Talk - Scalable CSS ArchitectureNgoc Tu Nguyen
 

What's hot (12)

SDL Trados Studio 2014 - Working with advanced file types
SDL Trados Studio 2014 - Working with advanced file typesSDL Trados Studio 2014 - Working with advanced file types
SDL Trados Studio 2014 - Working with advanced file types
 
CSS Frameworks
CSS FrameworksCSS Frameworks
CSS Frameworks
 
Keeping up with research using rss and alerts
Keeping up with research using rss and alertsKeeping up with research using rss and alerts
Keeping up with research using rss and alerts
 
Web development
Web developmentWeb development
Web development
 
An Introduction to CSS Frameworks
An Introduction to CSS FrameworksAn Introduction to CSS Frameworks
An Introduction to CSS Frameworks
 
How to get started with office 365 development
How to get started with office 365 developmentHow to get started with office 365 development
How to get started with office 365 development
 
Final project
Final projectFinal project
Final project
 
MDST 3703 F10 Seminar 10
MDST 3703 F10 Seminar 10MDST 3703 F10 Seminar 10
MDST 3703 F10 Seminar 10
 
Journey to the center of SharePoint
Journey to the center of SharePointJourney to the center of SharePoint
Journey to the center of SharePoint
 
ACDA OF MINNESOTA WEBSITE PRESENTATION
ACDA OF MINNESOTA WEBSITE PRESENTATIONACDA OF MINNESOTA WEBSITE PRESENTATION
ACDA OF MINNESOTA WEBSITE PRESENTATION
 
Introduction to Web Development - CSS
Introduction to Web Development - CSSIntroduction to Web Development - CSS
Introduction to Web Development - CSS
 
Salsita Tech Talk - Scalable CSS Architecture
Salsita Tech Talk - Scalable CSS ArchitectureSalsita Tech Talk - Scalable CSS Architecture
Salsita Tech Talk - Scalable CSS Architecture
 

Viewers also liked (20)

What Every Insurance Agent Should Know!
What Every Insurance Agent Should Know! What Every Insurance Agent Should Know!
What Every Insurance Agent Should Know!
 
Different technologies
Different technologiesDifferent technologies
Different technologies
 
Rob Flaherty Inc. Marketing Brochure
Rob Flaherty Inc. Marketing BrochureRob Flaherty Inc. Marketing Brochure
Rob Flaherty Inc. Marketing Brochure
 
Typography
TypographyTypography
Typography
 
Narrative
NarrativeNarrative
Narrative
 
Expresion oral y escrita
Expresion oral y escritaExpresion oral y escrita
Expresion oral y escrita
 
Contes tradicionals
Contes tradicionalsContes tradicionals
Contes tradicionals
 
Siglo xv. Prosa del Prerrenacimiento
Siglo xv. Prosa del PrerrenacimientoSiglo xv. Prosa del Prerrenacimiento
Siglo xv. Prosa del Prerrenacimiento
 
Final Expense Presentation by SMS
Final Expense Presentation by SMSFinal Expense Presentation by SMS
Final Expense Presentation by SMS
 
Victor Hugo
Victor HugoVictor Hugo
Victor Hugo
 
La novela en el siglo XVI: introducción
La novela en el siglo XVI: introducciónLa novela en el siglo XVI: introducción
La novela en el siglo XVI: introducción
 
Victor Hugo
Victor HugoVictor Hugo
Victor Hugo
 
VICTOR HUGO
VICTOR HUGOVICTOR HUGO
VICTOR HUGO
 
Los Miserables de Victor Hugo
Los Miserables de Victor HugoLos Miserables de Victor Hugo
Los Miserables de Victor Hugo
 
Víctor Hugo..
Víctor Hugo..Víctor Hugo..
Víctor Hugo..
 
LOS MISERABLES
LOS MISERABLESLOS MISERABLES
LOS MISERABLES
 
VICTOR HUGO
VICTOR HUGO VICTOR HUGO
VICTOR HUGO
 
Victor Hugo
Victor HugoVictor Hugo
Victor Hugo
 
DIAPOSITIVAS LA NOVELA
DIAPOSITIVAS LA NOVELADIAPOSITIVAS LA NOVELA
DIAPOSITIVAS LA NOVELA
 
Analisis literario 'los miserables'
Analisis literario 'los miserables'Analisis literario 'los miserables'
Analisis literario 'los miserables'
 

Similar to Presentation

Emerging technologies in academic libraries
Emerging technologies in academic librariesEmerging technologies in academic libraries
Emerging technologies in academic librariesMichael Cummings
 
Security on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition MeetupSecurity on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition MeetupCloudHesive
 
Security on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition MeetupSecurity on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition MeetupCloudHesive
 
Slides: NoSQL Data Modeling Using JSON Documents – A Practical Approach
Slides: NoSQL Data Modeling Using JSON Documents – A Practical ApproachSlides: NoSQL Data Modeling Using JSON Documents – A Practical Approach
Slides: NoSQL Data Modeling Using JSON Documents – A Practical ApproachDATAVERSITY
 
Capture All the URLs: First Steps in Web Archiving
Capture All the URLs: First Steps in Web ArchivingCapture All the URLs: First Steps in Web Archiving
Capture All the URLs: First Steps in Web ArchivingKristen Yarmey
 
Identity Management: Tools, processes & services
Identity Management: Tools, processes & servicesIdentity Management: Tools, processes & services
Identity Management: Tools, processes & servicesJISC Netskills
 
AzureDay - Introduction Big Data Analytics.
AzureDay  - Introduction Big Data Analytics.AzureDay  - Introduction Big Data Analytics.
AzureDay - Introduction Big Data Analytics.Łukasz Grala
 
Opening Keynote - DrupalCamp St. Louis 2014
Opening Keynote - DrupalCamp St. Louis 2014Opening Keynote - DrupalCamp St. Louis 2014
Opening Keynote - DrupalCamp St. Louis 2014Brad Nowak
 
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarNilesh Shah
 
10 Things Learned Releasing Databricks Enterprise Wide
10 Things Learned Releasing Databricks Enterprise Wide10 Things Learned Releasing Databricks Enterprise Wide
10 Things Learned Releasing Databricks Enterprise WideDatabricks
 
Session #2, tech session: Build realtime search by Sylvain Utard from Algolia
Session #2, tech session: Build realtime search by Sylvain Utard from AlgoliaSession #2, tech session: Build realtime search by Sylvain Utard from Algolia
Session #2, tech session: Build realtime search by Sylvain Utard from AlgoliaSaaS Is Beautiful
 
Dataverse Netowrk Project
Dataverse Netowrk ProjectDataverse Netowrk Project
Dataverse Netowrk ProjectJulie Goldman
 
Large scale computing
Large scale computing Large scale computing
Large scale computing Bhupesh Bansal
 
Visual Studio LightSwitch (Beta 1) Overview
Visual Studio LightSwitch (Beta 1) OverviewVisual Studio LightSwitch (Beta 1) Overview
Visual Studio LightSwitch (Beta 1) OverviewSteve Lange
 
Modern ETL: Azure Data Factory, Data Lake, and SQL Database
Modern ETL: Azure Data Factory, Data Lake, and SQL DatabaseModern ETL: Azure Data Factory, Data Lake, and SQL Database
Modern ETL: Azure Data Factory, Data Lake, and SQL DatabaseEric Bragas
 
The workflows for the ingest of digital objects into a repository/digital l...
The workflows for the ingest of  digital objects into a repository/digital l...The workflows for the ingest of  digital objects into a repository/digital l...
The workflows for the ingest of digital objects into a repository/digital l...Hong (Jenny) Jing
 
The workflows for the ingest of digital objects into a repository/digital li...
The workflows for the ingest of digital objects into a repository/digital li...The workflows for the ingest of digital objects into a repository/digital li...
The workflows for the ingest of digital objects into a repository/digital li...Hong (Jenny) Jing
 
Azure Big Data Story
Azure Big Data StoryAzure Big Data Story
Azure Big Data StoryLynn Langit
 

Similar to Presentation (20)

Emerging technologies in academic libraries
Emerging technologies in academic librariesEmerging technologies in academic libraries
Emerging technologies in academic libraries
 
Security on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition MeetupSecurity on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition Meetup
 
Security on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition MeetupSecurity on AWS, 2021 Edition Meetup
Security on AWS, 2021 Edition Meetup
 
Slides: NoSQL Data Modeling Using JSON Documents – A Practical Approach
Slides: NoSQL Data Modeling Using JSON Documents – A Practical ApproachSlides: NoSQL Data Modeling Using JSON Documents – A Practical Approach
Slides: NoSQL Data Modeling Using JSON Documents – A Practical Approach
 
Capture All the URLs: First Steps in Web Archiving
Capture All the URLs: First Steps in Web ArchivingCapture All the URLs: First Steps in Web Archiving
Capture All the URLs: First Steps in Web Archiving
 
Identity Management: Tools, processes & services
Identity Management: Tools, processes & servicesIdentity Management: Tools, processes & services
Identity Management: Tools, processes & services
 
AzureDay - Introduction Big Data Analytics.
AzureDay  - Introduction Big Data Analytics.AzureDay  - Introduction Big Data Analytics.
AzureDay - Introduction Big Data Analytics.
 
Opening Keynote - DrupalCamp St. Louis 2014
Opening Keynote - DrupalCamp St. Louis 2014Opening Keynote - DrupalCamp St. Louis 2014
Opening Keynote - DrupalCamp St. Louis 2014
 
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
 
10 Things Learned Releasing Databricks Enterprise Wide
10 Things Learned Releasing Databricks Enterprise Wide10 Things Learned Releasing Databricks Enterprise Wide
10 Things Learned Releasing Databricks Enterprise Wide
 
Session #2, tech session: Build realtime search by Sylvain Utard from Algolia
Session #2, tech session: Build realtime search by Sylvain Utard from AlgoliaSession #2, tech session: Build realtime search by Sylvain Utard from Algolia
Session #2, tech session: Build realtime search by Sylvain Utard from Algolia
 
Dataverse Netowrk Project
Dataverse Netowrk ProjectDataverse Netowrk Project
Dataverse Netowrk Project
 
Large scale computing
Large scale computing Large scale computing
Large scale computing
 
HDFS and Hadoop
HDFS and Hadoop HDFS and Hadoop
HDFS and Hadoop
 
Visual Studio LightSwitch (Beta 1) Overview
Visual Studio LightSwitch (Beta 1) OverviewVisual Studio LightSwitch (Beta 1) Overview
Visual Studio LightSwitch (Beta 1) Overview
 
Dremio introduction
Dremio introductionDremio introduction
Dremio introduction
 
Modern ETL: Azure Data Factory, Data Lake, and SQL Database
Modern ETL: Azure Data Factory, Data Lake, and SQL DatabaseModern ETL: Azure Data Factory, Data Lake, and SQL Database
Modern ETL: Azure Data Factory, Data Lake, and SQL Database
 
The workflows for the ingest of digital objects into a repository/digital l...
The workflows for the ingest of  digital objects into a repository/digital l...The workflows for the ingest of  digital objects into a repository/digital l...
The workflows for the ingest of digital objects into a repository/digital l...
 
The workflows for the ingest of digital objects into a repository/digital li...
The workflows for the ingest of digital objects into a repository/digital li...The workflows for the ingest of digital objects into a repository/digital li...
The workflows for the ingest of digital objects into a repository/digital li...
 
Azure Big Data Story
Azure Big Data StoryAzure Big Data Story
Azure Big Data Story
 

Presentation

  • 1. Mixed Drink Consuming UW web services in Drupal Ryan Ositis (rositis@uw.edu) Zach Griswold (zachgris@uw.edu)
  • 2. Lots of data! • People • Courses • Groups • Academic calendar • Lots more: http://webservices.washington.edu/ service/browse/
  • 3. Our Focus • People web service for directories • Course data for website listings and directories • Groups data for authorization
  • 4. Needs • No calling into web services every time data is needed • Store data "the Drupal way" • Reusable and extensible • Secure
  • 5. "The Drupal Way" • No direct database code • Reusable and extensible • Get things done for free Search / filtering Versioning Views!
  • 6. Secure • Sensitive data • Must keep certificates secure • What if Drupal / Apache was compromised?
  • 9. Our Solution(s): EasyCCK UW API Courses LTS UW GWS UW Auth People
  • 10. LTS • "Locally Trusted Service" • Plugin-Model • Register to handle "commands" • Provide data to clients • Easy to consume more data in the future • Secure • Manages certificates • 1024 bit RSA + 256 bit AES
  • 11. Did you say Daemon?
  • 12. Why’d you do that?
  • 14. LTS • Current modules / plugins • UW People • UW GWS Auth • UW Courses
  • 15. UW People • Really 2 modules: UW People & Directory Profile • Pulls data from the Person Web Service (LTS) into nodes (EasyCCK API) • Views!
  • 16. UW People • Content Types • Person • Student • Employee • Simplified Profile* • Extended Profile*
  • 17. UW People • Fields • Education • Project • Key Work • Recognition • & more!
  • 18. UW People • Automatic • All data is in nodes • Views, theming layer, search, caching, etc... - everything Drupal has to offer for nodes
  • 19. Projects https://drupal.ischool.uw.edu/ projects Zach Griswold (zachgris@uw.edu) Ryan Ositis (rositis@uw.edu)
  • 20. Fin Questions? Ryan Ositis (rositis@uw.edu) Zach Griswold (zachgris@uw.edu)

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n