Dataverse.Unmask (funksjon)

Gjelder for: Lerretsapper

Ber om den umaskerte verdien for en sikret kolonne for én enkelt Microsoft Dataverse post.

Description

Funksjonen Dataverse.Unmask leser en kolonne asynkront og returnerer én enkelt verdi med kolonnens Power Fx-type. Den returnerer ikke en post eller tabell, oppdaterer kildeposten, endrer maskeregelen eller erstatter maskerte verdier andre steder i appen.

Datavers fremtvinger brukerens tillatelser. Funksjonen gir ikke tilgang til eller omgår sikkerhet på kolonnenivå. Hvis du vil lese en umaskert verdi, trenger brukeren tilgang til tabellen og posten , lesetillatelsen for kolonnen og riktig lesetillatelse i en kolonnesikkerhetsprofil.

Legg til dataverstabellen som en datakilde i lerretsappen, og aktiver sikkerhet på kolonnenivå i kolonnen. Hvis du vil konfigurere maskering, bruker du en støttet maskeringsregel i et administrert miljø. En sikret kolonne har ikke nødvendigvis en maskeringsregel. Se sikkerhet på kolonnenivå og Opprett og administrer maskeringsregler for konfigurasjon, tillatelsesalternativer og støttede maskeregeltyper.

Viktig!

Få administratoren til å velge riktig leseumaskert tillatelse for scenarioet. Ikke gi alle poster utelukkende for å aktivere et eksempel på én post. Test tilgangsbegrensninger med en ikke-administratorkonto fordi sikkerhet på kolonnenivå ikke skjuler data fra systemadministratorer.

Syntaks

Dataverse.Unmask( Record, Column )
  • Post – obligatorisk. En post som beholder sin dataverse postidentitet og er knyttet til nøyaktig én datavers datakilde.
  • Kolonne – obligatorisk. Identifikatoren for en sikret, støttet skalarkolonne i den posten. Angi en kolonneidentifikator, ikke et tekstuttrykk som inneholder kolonnenavnet.

Du kan bruke et gyldig visningsnavn eller logisk navn for kolonne. Bruk enkle anførselstegn rundt et visningsnavn som inneholder mellomrom, for eksempel 'Sensitive reference'. Doble anførselstegn oppretter en tekstlitteral og tilsvarer ikke. Power Apps løser identifikatoren til kolonnens logiske navn.

Post- og kolonnekrav

En valgt galleripost, en post som returneres av LookUp eller en post som er lagret i en variabel eller samling, kan brukes hvis den beholder dataversidentiteten og tilknytningen til nøyaktig én dataverskilde. Å konstruere en anonym post med de samme feltverdiene etablerer ikke denne identiteten.

Ikke tilordne poster fra forskjellige dataversetabeller til samme postvariabel som brukes av Dataverse.Unmask. En slik variabel er knyttet til flere kilder og avvises, selv om tabellene har sikret kolonner med samsvarende navn. Bruk separate variabler eller kall med én kilde.

Målkolonnen må være sikret og ha en støttet skalartype. Oppslagsverdi, post, tabell, fil, bilde og uskrevne kolonner støttes ikke mål. Å lese en post gjennom et oppslag er forskjellig fra å avdekke en oppslagsverdikolonne. Se dokumentasjonen for maskeringsregel for støttede maskeringsscenarioer. godkjenning av formeltype fastslår ikke at en maskeringsregel kan konfigureres for en kolonne.

Returner verdi og feil

Resultatet har samme Power Fx-type som målkolonnen. En tekstkolonne returnerer for eksempel tekst, ikke en post som inneholder tekst.

Bruk IfError til å håndtere mislykkede lesinger. Datavers bestemmer svaret når tilgangen er begrenset. ikke anta at alle tillatelsesfornektelser gir en HTTP-feil.

Situasjon Virkemåte
Posten har ingen tilknyttet datakilde eller har flere datakilder. Power Apps Studio avviser postargumentet.
Kolonnen er ukjent, usikret eller har en type som ikke støttes. Power Apps Studio avviser kolonneargumentet.
En ikke-tom post har ingen gyldig identitet under kjøring, eller datakilden kan ikke løses. Funksjonen returnerer en ugyldig postfeil.
Dataverse-forespørselen mislykkes. Funksjonen returnerer en Power Fx-feil som du kan håndtere med IfError.
En vellykket forespørsel returnerer ingen rad, utelater den forespurte kolonnen eller returnerer en nullverdi. Resultatet er tomt.

Bare et tomt resultat identifiserer ikke et tillatelsesproblem. Kontroller den valgte posten, verdien og brukerens tilgang før du behandler et tomt resultat som en feil.

Eksempler

Disse eksemplene bruker en illustrerende Customers datavers tabell med en sikret tekstkolonne kalt 'Sensitive reference'. Legg til tabellen som en datakilde, konfigurer en maskeringsregel og bruk syntetiske poster med en testbruker som har de riktige tillatelsene. Erstatt tabell- og kolonnenavnene med dine egne.

Lese en valgt post

Angi elementegenskapen for et galleri til Customers. Når en lagret post er valgt, ber denne formelen om den umaskerte referansen:

Dataverse.Unmask( Gallery1.Selected, 'Sensitive reference' )

Hvis den lagrede verdien er "REF-12345" og brukeren har tillatelse til å lese den umaskert, er det forventede resultatet teksten "REF-12345". Formelen endrer ikke den maskerte verdien som leses gjennom Gallery1.Selected.'Sensitive reference'.

Håndtere en feil for et tekstresultat

Bruk følgende formel i tekstegenskapen for en tekstetikett der du har tenkt å vise den umaskerte verdien:

IfError(
    Dataverse.Unmask( Gallery1.Selected, 'Sensitive reference' ),
    "Unable to show this value."
)

Erstatningsverdien er tekst fordi 'Sensitive reference' den er en tekstkolonne. Bruk en kompatibel erstatningsverdi for en annen støttet kolonnetype, eller konverter resultatet før du returnerer en tekstmelding. IfError håndterer feil, ikke vellykkede, tomme resultater.

Hvis du vil ha en fullstendig samhandling om fremsløring og skjuling, kan du se Vise en maskert datavers kolonneverdi.

Datahåndtering

Gjentatte evalueringer kan bruke hurtigbufrede resultater på nytt i stedet for å foreta nye nettverksforespørsler. Ikke stol på en annen evaluering for å kontrollere nylig endrede tillatelser på nytt. Å skjule en kontroll er ikke en autorisasjonsgrense og fjerner ikke bufrede verdier.

Ikke behold umaskerte verdier med SaveData, skriv dem til logger eller kopier dem til en mindre beskyttet datakilde. Unngå å vise umaskerte data i skjermbilder eller diagnosevedlegg.