Anonyymi tietojen käyttö Fabric-sovelluksissa

Anonyymi tietokäyttö antaa Fabric-sovellukselle mahdollisuuden avata valitut datatoiminnot käyttäjille, jotka eivät ole kirjautuneina sisään. Tätä pääsyä ohjaat Fabric-vuokralaisella tasolla ja jokaisessa tietomallissa. Anonyymi pääsy on valtuutusvaihtoehto, ei korvaaja tunnistautumiselle. Sama sovellus voi tarjota julkisen pääsyn joihinkin toimijoihin, mutta vaatii käyttäjiä kirjautumaan sisään toisille tahoille tai toiminnoille.

Important

Kuka tahansa, joka pääsee sovelluksen URL-osoitteeseen, voi käyttää roolille annettuja anonymous operaatioita. Älä paljasta henkilökohtaisia, luottamuksellisia, taloudellisia tai sisäisiä liiketoimintatietoja tämän roolin kautta.

Käyttötilanteet

Harkitse anonyymiä tietojen käyttöä, kun sovelluksen on tarjottava rajallinen toiminnallisuus ilman kirjautumisvaatimusta.

Esimerkkitilanne Esimerkkipääsy Suositeltu laajuus
Julkiset viitetiedot Katso tuoteluetteloita, aikatauluja tai julkisia aineistoja read
Palautteen keruu Lähetä kommentteja tai vastauksia kyselyihin create

Anonyymi pääsy ei ole sopivaa, kun sovelluksen täytyy tunnistaa käyttäjä, valvoa omistusoikeutta tai antaa pääsy henkilöllisyysväitteiden perusteella. Käytä autendioituja rooleja näissä tilanteissa.

Miten anonyymi pääsy toimii

Anonyymi tiedonsaanti käyttää itsenäisiä valvontakeinoja:

  1. Vuokralaisympäristö: Fabric-vuokralaisen ylläpitäjä myöntää anonyymin pääsyn tietoihin organisaatiolle tai valituille tietoturvaryhmille.
  2. Datamallin rooli: Entiteetti käyttää anonymous roolia määritelläkseen operaatiot, joita tunnistautumattomat käyttäjät voivat suorittaa.

Vuokralaisympäristö on koko organisaation raja. Sovelluksen asetus mahdollistaa anonyymien pyyntöjen tavoittamisen sovelluksen datapalveluun. Entiteettirooli määrittää, mitä tietoja ja toimintoja pyynnöt voivat käyttää. Yhden tai kahden tällaisen ohjauksen käyttöönotto ei anna anonyymiä pääsyä.

Ota vuokralaisasetus käyttöön

Fabric-vuokralaisen ylläpitäjän on otettava käyttöön anonyymi datan käyttö ennen kuin sovelluskehittäjät voivat käyttää sitä. Asetus on oletuksena pois päältä.

  1. Kirjaudu Fabric hallintaportaaliin.

  2. Valitse Vuokraajan asetukset.

  3. Fabric apps (preview) -osiosta löydät Anonymous data access.

    Kuvakaappaus Anonymous data access -asetuksesta Fabric-ylläpitäjäportaalissa.

  4. Määritä asetukseksi Käytössä.

  5. Sovella asetusta koko organisaatioon tai tiettyihin turvallisuusryhmiin.

  6. Valitse Käytä.

Muutokset voivat kestää muutaman minuutin ennen kuin ne alkavat vaikuttaa. Kun rajoitat asetuksen turvallisuusryhmiin, varmista, että sovelluksen kehittäjä tai omistaja kuuluu sallittuun ryhmään.

Määrittele anonyymi pääsy tietomallissa

Käytä sisustajaa @role entiteettiin ja määritä anonymous roolin nimi. Toinen argumentti määrittelee sallitut tietooperaatiot: create, read, update, tai delete.

Parametrit

Parametri Tyyppi Description
roleName string Roolinimi, kuten authenticated tai mukautettu sovellusrooli
actions string \| string[] Yksitoiminen tai taulukko: create, , readupdatedelete, , tai * kaikille
options object Valinnainen objekti, jossa checkon , include, ja exclude ominaisuudet

Seuraava esimerkki mahdollistaa todennuttamattomien käyttäjien lukea julkisia ilmoituksia:

import { entity, role, uuid, text } from '@microsoft/rayfin-core';

@entity()
@role('anonymous', 'read')
export class Announcement {
  @uuid() id!: string;
  @text() title!: string;
  @text() content!: string;
}

Rooli anonymous ei käytä identiteettiväitteitä, koska sisäänkirjautunutta identiteettiä ei ole saatavilla. Määrittele kapein joukko operaatioita, jotka tukevat skenaariotasi.

Salli käyttäjien lähettää tietoja

Palautelomakkeessa myönnä create pääsy ilman , readupdate, tai delete pääsyä:

import { entity, role, uuid, text } from '@microsoft/rayfin-core';

@entity()
@role('anonymous', 'create')
export class Feedback {
  @uuid() id!: string;
  @text() comment!: string;
}

Tämä malli antaa käyttäjien lähettää palautetta, mutta ei anna heidän nähdä tai muuttaa lähetettyjä merkintöjä.

Salli useat operaatiot

Välitä taulukko, kun skenaario vaatii useamman kuin yhden toiminnon:

import { boolean, entity, role, text, uuid } from '@microsoft/rayfin-core';

@entity()
@role('anonymous', ['create', 'read', 'update'])
export class SharedTodo {
  @uuid() id!: string;
  @text() title!: string;
  @boolean({ default: false }) completed!: boolean;
}

Kuka tahansa, jolla on pääsy tähän sovellukseen, voi luoda, katsella ja päivittää jokaisen jaetun tehtävän. He eivät voi poistaa tehtäviä, koska delete niitä ei ole mukana. Käytä tällaisia laajoja käyttöoikeuksia vain julkisille tai väliaikaisille tiedoille, joissa käyttäjien odotetaan jakavan pääsyn.

Yhdistä anonyymit ja todennetut roolit

Sovella molempia rooleja yhdelle yksikölle, kun julkiset ja sisäänkirjautuneet käyttäjät vaativat eri käyttöoikeudet. Esimerkiksi kuka tahansa voi lukea blogikirjoituksen, mutta vain sen kirjautunut omistaja voi muuttaa sitä:

import { entity, role, uuid, text } from '@microsoft/rayfin-core';

@entity()
@role('anonymous', 'read')
@role('authenticated', ['create', 'update', 'delete'], {
  policy: (claims, item) => claims.sub.eq(item.createdBy),
})
export class BlogPost {
  @uuid() id!: string;
  @text() title!: string;
  @text() content!: string;
  @text() createdBy!: string;
}

Anonyymi rooli mahdollistaa julkiset lukemiset ilman henkilöllisyysväitteiden arviointia. Todennettu rooli käyttää kirjautuneen käyttäjän väitteitä rajoittaakseen muutoksia käyttäjän omistamaan sisältöön.

Turvallisuusohjeet

  • Myönnä vaadittu vähimmäispääsy. Mieluummin read tai create yksin. Myönnetään update tai delete vain silloin, kun julkinen työnkulku sitä vaatii.
  • Rajoita paljaita kenttiä. Käytä include tai exclude asetuksia estääksesi pääsyn kentille, joita anonyymit käyttäjät eivät tarvitse. Lisätietoja löytyy kohdasta Määrittele datan käyttöoikeudet.
  • Älä luota sovelluksen käyttöliittymään suojan saamiseksi. Käyttöoikeudet on määriteltävä datamallissa, koska soittajat voivat lähettää pyyntöjä käyttämättä frontendiäsi.
  • Varaudu epäluotettavien tietojen varaan. Validoi lähetetty data ja suunnittele julkiset kirjoitustoiminnot roskapostille, automaatiolle ja odottamattomalle liikenteelle.
  • Testi evättiin operaatiot. Vahvista, että roolista pois jätetyt toiminnot hylätään käyttäjiltä ilman istuntoa.

Poista anonyymi pääsy käytöstä

Julkisen pääsyn poistamiseksi sovelluksesta:

  1. Poista rooli anonymous jokaisesta tietomallista pois.
  2. Palauta sovellus ajamalla npx rayfin up.

Vuokralaisen ylläpitäjä voi myös poistaa vuokralaisen asetuksen käytöstä estääkseen anonyymin tiedon pääsyn kaikille sovelluksille vuokralaisen sisällä ja rajoittaakseen pääsyn valittuihin turvaryhmiin.