Aiemmassa kirjoituksessani kävin läpi, miten Flow:n avulla voi muokata PowerAppsien omistajia. Esimerkiksi tilanteessa, jossa PowerAppsin alkuperäinen tekijä ei ole enää organisaation palveluksessa.
Tällä kertaa käsitellään samaa ongelmaa Flow:n näkökulmasta. Käyttäjät ja konsultit rakentavat erilaisia työnkulkuja, automaatioita ja integraatioita Flow:ta hyödyntäen.
Mutta mitä tapahtuu, kun Flow:n omistaja jättää organisaation?
Esimerkiksi ajastettu Flow jatkaa käynnistymistään aivan kuten ennenkin.
Omaan käyttöön tehdyt Flow:t sisältävät kuitenkin yleensä toimintoja (actions), joita suoritetaan Flow:n tekijän tunnuksella. Jota ei enää ole. Käytännössä Flow lakkaa toimimasta.
Epäonnistuneista suorituksista saa tiedon ainoastaan Flow:n omistaja. Jota ei enää ole.
Jotain pitäisi vissiin tehdä.
Flown omistaja vs. muokkaaja vs. luoja
Mutta mikä / kuka on Flow:n omistaja?
Riippumatta siitä, mitä käyttöliittymässä lukee, on
- Omistaja = Flow:n alkuperäinen luoja. Vain ja ainoastaan hän.
- Muokkaaja = Henkilö, jolle Flow on jaettu muokattavaksi
Käyttäjää saattaa hämätä Flow:n tiedoissa näytettävät ”omistajat” (owners). Ne näyttävät samanarvoisilta.
Tarkempi tarkastelu kuitenkin paljastaa Timo Pertilä:n olevan Flow:n oikea omistaja. Häntä nimittäin ei voi poistaa omistajien joukosta. Muut ovat muokkaajia.
Asia saa vahvistuksen tekemällä Flow:n, jolla haetaan ylläolevan Flow:n omistajat.
Paluuarvosta nähdään minun roolin olevan Owner ja jälkeen päin lisätyn omistajan roolin olevan CanEdit.
Flow:n admin center sekoittaa vielä pakkaa. Siellä Flow:n luoja näkyy sekä luojana (Created by), että omistajana (Owner).
Selkeää?
Nyt kun perusteet on kunnossa, voidaan jatkaa.
Miltä Flow näyttää kun omistaja on lähtenyt?
Kuvitellaan henkilön X lähteneen organisaatiosta. Hän jätti kuitenkin jälkeensä usean Flow:n.
Mikäli hän oli jakanut Flow:n muille käyttäjille, näyttää Flow:n omistajalista tältä.
Alkuperäistä omistajaa ei listalla näy. Huomaa, että nyt voin poistaa molemmat omistajat (eli muokkaajat). Tämän jälkeen Flow on orpo.
Sama Flow näyttää Flow/PowerApps Admin center:ssä seuraavalta.
Omistajan (Created by) tiedot eivät koskaan lataudu. Samoin todellista omistajaa ei näy omistaja-listassa (owners).
Omistajan vaihtaminen
Toisin kuin PowerAppsien kanssa, Flow:n omistajaa ei (toistaiseksi) voi vaihtaa.
Miten tämä ongelma sitten tulisi käsitellä?
Ensin tulee löytää Flow:t, joiden omistaja on kadonnut. Tämä tehdään tietenkin Flow:lla
Flow joka etsii orvot Flow:t
Käydään kuukausittain läpi kaikki Flow:t. Tulemme jakamaan orvot Flow:t henkilölle X. Haetaan ensimmäiseksi käyttäjän X käyttäjäprofiili (näin saamme jatkossa tarvitsemamme käyttäjä id:n).
OwnerCount-muuttujan tarkoitus selviää hieman myöhemmin.
Varsinainen työ alkaa listaamalla ympäristöt (list environments).
Seuraavaksi haetaan kaikki yhden ympäristön Flow:t. Tämä onnistuu List Flows as Admin -toiminnolla.
Tämän jälkeen päästään listaamaan jokaisen Flow:n omistajat (Get Flow Owner Role as Admin).
Ja sitten tarkkana.
Get Flow Owner as Admin -toiminto palauttaa nimestään huolimatta kaikki käyttäjät ja ryhmät, joille Flow on jaettu. Esimerkiksi kuvan run-only käyttäjät.
Meitä kiinnostavat ainoastaan Flow:t, joilla on tasan yksi omistaja. Käydään Flow:n käyttäjät läpi ja lasketaan, montako omistajaa sillä on (käyttäjät joiden rooli (RoleName) on jotain muuta kuin CanView).
Mikäli omistajia (=muokkaajia) on ainoastaan yksi, sen on pakko olla Flow:n luoja. Sillä häntä ei voi poistaa Flow:n käyttäjistä.
Tällöin tarkistamme, onko kyseistä käyttäjää enää olemassa. Tämä onnistuu hakemalla kyseisen käyttäjän profiiilin (Get user profile -toiminto).
Mikäli profiilin hakeminen epäonnistuu (käyttäjää ei ole), olemme löytäneet orvon Flow:n.
Tällöin lähetämme henkilölle X sähköpostia, jossa on löydetyn Flow:n tiedot. Lisäksi hänelle annetaan Flow:n muokkausoikeudet (Modify Flow Owners as Admin).
Henkilön tehtäväksi jää päättää mitä Flow:lle tehdään. Mikäli se säilytetään, hänen tulee tarkistaa, onko Flow:n käyttämät yhteydet (connections) toimivia ja korjata ne tarvittaessa.
Muista vaihtaa sähköpostin lähettävän toiminnon ”run after” arvoksi ”has failed”. Muutoin lähetät sähköpostin jokaisesta Flow:sta joka on kunnossa.
Valmis Flow näyttää tältä.
Käyttöoikeudet ja lisenssit
Yllä esitelty esimerkki edellyttää käyttäjiltään joko
- kaikkiin ympäristöihin System Administrator -oikeudet,
- tenantin Dynamics 365 service administrator -oikeudet tai
- tenantin Global Administrator –oikeudet
Lisäksi käyttäjällä tulee olla Flow (tai PowerApps) P2 -lisenssi. Tämä vaatimus tulee tosin poistumaan lokakuun lisenssimalliuudistuksen myötä.
Yhteenveto
Flow:den hallinta poikkeaa melkoisesti PowerAppsien hallinnasta.
- Omistajaa ei voi jälkikäteen vaihtaa
- Hävinneestä omistajasta tiedetään ainoastaan principal id -> Tietyn lähteneen henkilön Flow:ta on hankalaa metsästää.
- Jokaista Flow:ta ei ole tarpeen automaattisesti jakaa IT:lle (toki niin voidaan tehdä jos halutaan)
Mikäli orvolle Flow:lle halutaan uusi omistaja, onnistuu se toistaiseksi ainoastaan tallentamalla Flow uudella nimellä uuden omistajan toimesta.
Jep. Hieman ankeaa.
Koko ongelmaa ei olisi, mikäli Flow:t luotaisiin alunperinkin palvelutunnuksella henkilökohtaisen tunnuksen sijaan.