Navigating SharePoint Integration: From Seamless Configuration to Workflow Automation

SafeSoftware 862 views 59 slides Oct 16, 2024
Slide 1
Slide 1 of 59
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59

About This Presentation

Integrating SharePoint with FME can open up a world of possibilities, from automating repetitive tasks to managing your data workflows. But navigating the integration process might seem daunting—until now. In this webinar, we’ll break down how to seamlessly connect SharePoint with FME, covering ...


Slide Content

Navigating SharePoint
Integration: From
Seamless Configuration
to Workflow Automation

Natalie
Clouthier

Technical Support Specialist,
FME Form
Safe Software
Matt
Meeboer

Technical Support Specialist,
FME Flow
Safe Software
Meet our Team

Welcome to Livestorm.
A few ways to engage with us during the webinar:


Audio issues? Click this for 4 simple
troubleshooting steps.

How to download slides
1.Hover over the
slide deck in the
webinar room
2.Click this button

Agenda
1Introduction to SharePoint in FME
2Web Services, Connections, and the OAuth flow
3Real World Examples
4Troubleshooting
5Summary
6Additional Resources
Agenda

Poll:
What is your experience
level with SharePoint?

1
Introduction

How do you integrate data
from SharePoint into your
workflows?

●Seamlessly access data
●Automate repetitive tasks
●Resolve integration issues quickly

SharePoint Data
Integration Needs

SharePoint Challenges
Common frustrations people face with this topic are:
●How do I connect to SharePoint?
●How do I access my data?
●Manual processes for synchronizing data
●Errors (Permissions, SSL, others)

FME can help
Get connected and start integrating with
SharePoint (and a whole lot more!)

One platform, two technologies
FME Form FME Flow
Data Movement and transformations
(“ETL”) workflows are built here.
Brings life to FME Form workflows
FME Flow Hosted
Safe Software managed FME Flow
fme.safe.com/platform
FME Enterprise Integration Platform
Safe & FME

List Reader/Writer
Online Connector
Read SharePoint Lists as
Feature Types (tables)
Upload, Download, List, and
Delete documents in SharePoint
Online

Flash
Demo

2
Key Terms and
Integration
Methods

FME Web Services & SharePoint
●Tools → FME Options → Web
Connections → Manage Services

●Authorization with Microsoft Entra
○OAuth 2.0 grant flows

●Acquire / store access tokens

●First step in building web connections

Ref: Web Connections and FME

On-demand Webinar: Web Connections & Services in FME
FME Web Connections & SharePoint
●Tools → FME Options → Web
Connections

●Presents token to web service
provider for resource access

●Applied to FME canvas objects

OAuth 2.0
●Open Authorization standard
○NOT authentication, but authentication is needed

●Many methods (grant flows)
○Authorization code (+ refresh token)
○Client Credentials (*new in 2024.1*)

●Allows third-party client (FME) to access
hosted resources
○Sometimes on behalf of user

●Access tokens instead of passwords





Ref: Creating an OAuth 2.0 Web Service and Connection in FME

SharePoint in FME
●SharePoint List format

●SharePointOnlineConnector

●As a Web File System

●HTTPCaller



Ref: Getting Started with Microsoft SharePoint

SharePoint
List Format

The SharePoint List Reader / Writer
●Targets list resources held in SharePoint Server
2013+ or Microsoft SharePoint Online
○list = data in tabular format (rows and columns)

●Calls against the SharePoint API
○Ref: Get to know the SharePoint REST service

●Requires configuration of the SharePoint Online
(Template) web service
○OAuth 2.0 Authorization Code flow only
○Azure registered app with Delegated SharePoint API
permissions


Ref: Reading and Writing SharePoint Lists with FME
Ref: Microsoft SharePoint List Reader/Writer

SharePoint List Format - Web Service
●Supports the authorization code grant
flow only
○User credentials are is required

●Requires specific configuration
○See Getting Started with Microsoft
SharePoint

SharePoint
Online
Connector

The SharePointOnlineConnector
●Available as an FME Package on FME Hub
○Add-on to your FME Platform

●Transformer targeting Document Library resources
held in a SharePoint Online environment

●Calls against the Microsoft Graph API
○Ref: Microsoft Graph REST API v1.0 endpoint reference

●Requires configuration of at least one of:
○the SharePoint Online (safe.microsoft-sharepoint) web service;
■OAuth 2.0 Authorization code flow
■Azure app with Delegated Graph API permissions

○the new Microsoft Graph (App Only) web service
■OAuth 2.0 Client Credentials flow
■Azure app with Application Graph API permissions
FME Ref: Reading and Writing SharePoint Libraries

SharePointOnlineConnector - Web Services
Authorization Code Grant Flow - User
Client Credentials Grant Flow - No user
No additional configuration needed
Specific configuration needed - see Getting Started with Microsoft SharePoint

SharePoint
as a Web File
System

SharePoint Online as a Web File System
●Targets a specific file type
○take advantage of the functionality of some FME formats

●Calls against the Microsoft Graph API
○uses the SharePointOnlineConnector’s web connection

●Generally available if:
○The target file type can be hosted in SharePoint Online; and
○FME has a format for the file type
■Eg. Excel reader

3
Real World
Examples

Joining
SharePoint
Data and
Detecting
Change

Slide Title
Provide
up-to-date
construction
project
information on a
web map

Goal Block Key
Construction Progress Reports - SharePoint to AGOL
Result
Data is in
SharePoint Lists
and Libraries.
Data is
changing.
Manual
processes.

FME Workspace
run on schedule
to detect
changes in
SharePoint and
update the web
map

More accurate
and timely data
for consumers.
Manual process
removed.

Demo

Key Points
●Data within SharePoint Lists and Libraries
can be joined together
●A snapshot of a list or library can be
stored to evaluate what has changed
●Let the ChangeDetector do the work
●FME Flow Automations can poll
SharePoint on schedule

File Move and
Rename

Slide Title
Ensure files are
stored and named
in accordance with
your organization’s
standards
Goal Block Key
File Move and Rename (File Migration)
Result
Multiple users with
access to multiple
document libraries,
and uploading
multiple documents
Chain SharePoint
connectors together
to move and rename
SharePoint-hosted
items as needed
SharePoint hosted
resources stored
and named as per
organization
standards

Demo

Key Points
●Chain SharePointOnlineConnectors
together in one workflow
●Hold deletion until upload and rename is
complete
○the Junction transformer; consider a
FeatureHolder as well
●Readily automate on schedule in FME
Flow

SharePoint
Offroading
with the
HTTPCaller

Slide Title
Discover an initial
point-of-contact for
each SharePoint site
under my management

Goal Block Key
SharePoint Site Owner Discovery
Result
SharePointOnline
Connector does not
make API calls which
return the needed site
metadata

HTTPCallers with
Microsoft Graph API
requests
+
SharePointOnline
Connector web connection

A CSV of site
owners

Demo

Key Points
●HTTPCaller readily accepts access tokens
provided by SharePoint web connections!
○enable Use Authorization
○Authorization: Bearer {token} header

●Use the HTTPCaller to make requests not
covered by the SharePoint List format or the
SharePointOnlineConnector

●Ensure minimum permissions needed for
target API call are in place

4
Troubleshooting
Tips

OAuth 2.0 Connection Errors
●OAuth Failed, Bad Request, Invalid Redirect URI
●Check your FME web service definition
○Client ID, Tenant ID*, Client Secret* and Redirect URl* must all
match those values from the app registration in Azure
○Create a new web service from the template provided
●Try monitoring HTTP traffic as you test FME web
services
○Wireshark, Fiddler Everywhere, etc
●401 Unauthorized - try reauthenticating the web
connection
Testing and Troubleshooting Your Web Service
* where applicable, depending on the type of web service

Managed User Consent -
Administrator Approval Required
●User consent has been disabled in MS Entra
●Must request Admin consent for the Azure
registered app
●Once admin consent is granted, may need to
change the FME web service Authorization URL
“&prompt=” parameter to:
○&prompt=select_account
○&prompt=login
○&prompt=none
Testing and Troubleshooting Your Web Service

MS Entra Conditional Access Policies
●If-then statements which amplify control over how entities
(including users, groups, devices) access hosted resources
●Device compliance policies are common
○Clients must present device information which meets required device
criteria
○Error often presents during web service / connection testing
●Adaptive session lifetime policies are out there, too!
○Periodic reauthentication is required
○Web connection stops working every X number of days


Testing and Troubleshooting Your Web Service

Connection Authorized, But Resource Access
Denied
●Web service and connection authorize successfully, but still can’t
access target resources - 403 error
●Usually has to do with permissions
○User, group, site, item, registered app permissions….
●Check if you can readily access the target resource in a web
browser
●Check if you can readily access the resource with HTTPCaller
●Check if the SharePoint / Graph API supports the type of
resource you want to access
Testing and Troubleshooting Your Web Service

Connection Stops Working on FME Flow
●Works for a while, then you start receiving invalid token errors
●The Auth token is published with the web service, but expires
●Confirm your web service is configured correctly on FME Flow
○Authorize the web connection
○This allows FME Flow to get new access tokens when needed

Testing and Troubleshooting Your Web Service

Testing and Troubleshooting Your Web Service Testing and Troubleshooting Your Web Service
FME Flow
Redirect URI

More Errors
●HTTP Errors (i.e., 401, 403, 404)
●Timeouts
○FME can’t reach the web application URL
●HTTPS or SSL Certificate Errors
○May need to import SSL certificates to establish trust
○May need to disable / delete expired certificates from
OS certificate store(s)
Testing and Troubleshooting Your Web Service
Troubleshooting
SharePoint Web
Connections
Getting Started with
Microsoft SharePoint
(See ‘Creating a Web
Connection’)

5
Conclusion

Summary
●FME offers several ways to integrate with
SharePoint
●Automate SharePoint integrations with
FME Flow
●Web service configuration is crucial
●Lots of info in the Knowledge Base!
○Getting Started with Microsoft
Sharepoint

6
Resources

Get our Ebook
Spatial Data for the
Enterprise

fme.ly/gzc


Guided learning
experiences at your
fingertips
academy.safe.com


FME Academy
Resources
Check out how-to’s &
demos in the knowledge
base
support.safe.com
Knowledge Base Webinars
Upcoming &
on-demand webinars

safe.com/webinars

Check out
our podcasts
on-demand.
featuring special guest
speakers over at EM360

Resources

7
Next Steps

We’d love to help you get
started.
Get in touch with us at
[email protected]
Experience the
FME Accelerator
Contact Us
A world where data is not just a
commodity but a catalyst for
real change.
fme.safe.com/accelerator



Next Steps

Claim Your Community Badge &
Dive into the new Community!
●Get community badges for watching
webinars
●community.safe.com
●Today’s code: MTYZAA


Join the Community today!
Next Steps

Peak of Data Integration 2025
Seattle, WA | May 6–8, 2025
●Abstracts due Nov 29th, 2024
○All levels FME proficiency welcome
○15 & 25 min options (incl. Q&A)
○Special speaker rate for accepted talks
●Registration is open!

peakofdataintegration.com/Call-For-Presentations

8
Q&A

Thank You
Recap of Next Steps

1Follow us on LinkedIn!
2Contact us
3Experience the FME Accelerator

Please fill out our
webinar survey
Tags