Top
Sharegate migration Nintex

Migracja Nintex Workflow z on-prem do Office 365

Niedawno brałem udział w projekcie, w którym dane i informacje były tworzone przez lata w SharePoint utrzymywanym w infrastrukturze klienta (SharePoint 2010 i 2013) jednak firma zdecydowała się na migrację swoich zasobów i aplikacji do SharePoint Online w Office 365. Mówiono, że migracja z użyciem Sharegate będzie prosta i szybka, ale… jak zwykle rzeczywistość okazała się nieco bardziej skomplikowana.

Zanim rozpoczęliśmy migrację zacząłem od lektury treści, które opisywały sam proces migracji z użyciem Sharegate i o możliwych problemach. Na bazie tego i własnych doświadczeń, mogę podzielić je na 3 grupy:

  1. Ograniczenia Sharegate
  2. Ograniczenia SharePoint Online
  3. Ograniczenia Nintex dla Office 365

Ale po kolei. Postaram się przedstawić po krótce każdą z nich. 

Praca z obiekatmi autoryzacyjnymi w Nintex dla Office 365 (RequestDigest, FedAuth, rtFa)

Ostatnio rozpocząłem testowanie dostępnego w Nintex dla O365 RESTful API (http://help.nintex.com/en-us/sdks/sdko365/) z poziomu samych przepływów pracy (nie np. PowerShell, czy C#). Pomimo tego, że nie wszystkie metody działają poprawnie (np. zapisywanie wskazywanego przepływu jako nowy), z uwagi na fakt, iż akcja „Web Request” nie wspiera jeszcze przekazywania danych w postaci stringów binarnych i zwyczajnie wycina puste bajty (0x00), co w efekcie powoduje, że przekazywany do API plik jest niepoprawny, jednak u samych podstaw tych eksperymentów natrafiłem na inne wyzwanie. Mianowicie, w jaki sposób, z poziomu przepływu pracy tworzonego w Nintex, dostać się do wartości ciastek FedAuth i rtFa?

Czytałem artykuły, przeglądałem Stackoverflow w poszukiwaniu podobnych tematów, starając się znaleźć odpowiedź na pytanie, w jaki sposób można pobrać ciastka przy pomocy JavaScript. Traciłem już nadzieję i wówczas na trafiłem na ten cenny artykuł: Remote authentication in SharePoint Online | … And All That JS i nagle wszystko stało się jasne 🙂

Niniejszy post prezentuje sposób na uzyskanie wartości trzech obiektów, których SharePoint używa w celu uwierzytelnienia sesji:

  1. fedAuth cookie
  2. rtFa cookie
  3. RequestDigest token