Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Automation & Integration: Saving Clicks, One Click at a Time

Jamf
October 25, 2018

Automation & Integration: Saving Clicks, One Click at a Time

Presentation from JNUC 2018, the world's largest rally of Apple IT administrators.

Session:
Automation & Integration: Saving Clicks, One Click at a Time

Presented by:
Jonathan Yuresko, Jamf

View all session slides, recordings and more at https://www.jamf.com/events/jamf-nation-user-conference/2018/.

Jamf

October 25, 2018
Tweet

More Decks by Jamf

Other Decks in Technology

Transcript

  1. © JAMF Software, LLC Automation & Integration: Saving Clicks, One

    Click at a Time Presentation agenda: Using the Jamf Pro (classic) API What is a Webhook? Automations Integrations Let’s save some clicks!
  2. © JAMF Software, LLC Jamf Pro (classic) API • GET

    - Retrieve data either in XML or JSON • POST - Create new record via XML • PUT - Update a record via XML • DELETE - Remove a record/data What is an API?
  3. © JAMF Software, LLC Jamf Pro (classic) API • Make

    a request using Jamf Pro credentials • CLI or Custom app/GUI • Retrieve and parse response data • Take action/send commands How does it work?
  4. © JAMF Software, LLC Jamf Pro (classic) API /usr/bin/curl -X

    GET -su username:password \ --header 'content-type: application/xml' \ https://{jssUrl}/JSSResource/computers/id/1 GET Example Command
  5. © JAMF Software, LLC Jamf Pro (classic) API <computer> <general>

    <id>1</id> <name>Administrator's MacBook Pro</name> <mac_address>B8:C2:54:35:F8:96</mac_address> <alt_mac_address>22:00:11:73:9A:C0</alt_mac_address> <ip_address>100.109.121.31</ip_address> <last_reported_ip>100.39.93.184</last_reported_ip> GET Example Response
  6. © JAMF Software, LLC Jamf Pro (classic) API <computer> <general>

    <asset_tag>1000</asset_tag> </general> <location> <username>newemployee1</username> </location> </computer> PUT Example Data
  7. © JAMF Software, LLC Jamf Pro (classic) API /usr/bin/curl -X

    PUT -su username:password \ --header 'content-type: application/xml' \ https://{jssUrl}/JSSResource/computers/id/1 \ --data '<computer><general><asset_tag>1000</asset_tag></ general><location><username>newemployee1</username></ location></computer>' PUT Example Command
  8. © JAMF Software, LLC Webhooks Two parts: 1. Webhook POST

    data from Jamf Pro 2. Webhook catcher/server parses data What is a Webhook?
  9. © JAMF Software, LLC Webhooks • Set up a webhook

    event in Jamf Pro (New Enroll or Smart Group Change) • Get a webhook link/url for Jamf to send • Jamf Pro sends data at event How do they work? Jamf Pro Post
  10. © JAMF Software, LLC Webhooks • A Webhook Catcher is

    a server • Create a specific link/url for an action • Once data is received, the catcher can automate processes and/or run scripts How do they work? The Webhook Catcher
  11. © JAMF Software, LLC Workflows 1. New employee joins company

    2. HR inputs data into Workday/Namely 3. Email sent to IT to get tech ready 4. IT looks up user in Workday/Namely Onboarding (without automation)
  12. © JAMF Software, LLC Workflows 5. Finds role and department

    to determine device 6. Finds device from inventory 7. Wipes device 8. Tells Jamf Pro how to provision Onboarding (without automation)
  13. © JAMF Software, LLC Workflows 9. IT assigns device to

    user in Jamf Pro 10. Manually creates 12 SaaS accounts 11. Quadruple checks everything is right 12. IT sends employee email with creds Onboarding (without automation)
  14. © JAMF Software, LLC Workflows 1. New employee joins company

    2. HR inputs data into Workday/Namely 3. Email sent to IT to get tech ready 4. IT delivers device to new employee Onboarding (automated)
  15. © JAMF Software, LLC Webhooks • Webhooks and APIs! •

    Define all steps in the manual workflow • Plan and create a process • Piece out each step as an automation: API, Webhook and scripts How only 4 steps!?
  16. © JAMF Software, LLC Automation • A trigger is needed

    to initiate a process • Information gets retrieved and parsed • Webhook servers run API scripts • Data gets manipulated or adjusted • Data gets added to new/existing record • Actions are taken based on new data changes At a high level
  17. © JAMF Software, LLC Integrations • Microsoft Azure • O365

    • Google Admin/GSuite • Slack • Atlassian Suite • Crashplan • Zapier • Zoom.us Vendors with Automation (some) • WebEx • Adobe CC • ZenDesk • ServiceNow • JumpCloud • Salesforce • Citrix • Box • ConnectWise • Greenhouse • Dropbox • Trello • Asana • Cisco • Splunk • AWS
  18. © JAMF Software, LLC Developing a Process 2. HR inputs

    data into Workday/Namely • Monitor new employees with Zapier • New employee data is gathered • Automations happen Let’s start saving clicks!
  19. © JAMF Software, LLC Developing a Process 3. Email sent

    to IT to get tech ready • Monitor new emails/filters from HR • New employee data is gathered • Automations happen Let’s start saving clicks!
  20. © JAMF Software, LLC Developing a Process • Email created

    with gathered name from HR (Webhook & API/AD script) • Temporary password created and emailed to user on first day (Webhook? & API) • Create/provision SaaS accounts using vendor 3rd party APIs (API) • Available computer assigned in Jamf/PO created (Webhook & API) • Jamf Pro Smart Groups based on employee department/role (Jamf Pro) • End user boots up computer (DEP/auto-enroll) provisions automagically • Notification for IT that computer provisioned properly (Webhook) Let’s start saving clicks! (Automations)
  21. © JAMF Software, LLC Workflows 1. End user submits ticket

    (Slack, Zendesk, email) 2. IT admin reads the message 3. IT admin replies saying “We’re on it!” 4. IT admin figures out the best solution IT Tickets (without automation)
  22. © JAMF Software, LLC Workflows 5. Develops workflow/deployment resolution 6.

    IT admin tests resolution 7. IT admin provides solution to end user 8. IT admin closes ticket IT Tickets (without automation)
  23. © JAMF Software, LLC Workflows 1. End user submits ticket

    (Slack, Zendesk, email) 2. Notification to IT that issue resolved 3. There is no step 3. IT Tickets (automated)
  24. © JAMF Software, LLC Developing a Process 1. End user

    submits ticket (Slack, Zendesk, email) • Monitor new emails/filters from HR • End user data is gathered from ticket • Automations happen Let’s start saving clicks!
  25. © JAMF Software, LLC Developing a Process • Automated email

    is sent to end user to let them know ticket received (Webhook) • Message parser finds keywords from end user ticket (Webhook & API) ➡ Script to get computer serial number by username (Webhook & API) ➡ PUT computer to scope of desired setting/application (API/Jamf Pro) ➡ Reset password for SaaS/3rd-Party app, POST password reset (API) ➡ New equipment approval workflow (Webhook & API) ➡ Gathers inventory from Jamf Pro to advise how to troubleshoot (API) ➡ Provide IT admin with an email of computer vitals (API/Jamf Pro) Let’s start saving clicks! (Automations)