Amazon QuickSight je v celoti upravljana storitev poslovne inteligence (BI) v oblaku, ki omogoča enostavno povezovanje z vašimi podatki, ustvarjanje interaktivnih nadzornih plošč in njihovo skupno rabo z več deset tisoč uporabniki, bodisi v samem QuickSightu ali vdelanem v programsko opremo kot storitev (SaaS).
QuickSight Enterprise Edition je nedavno dodal varnost na ravni vrstic (RLS) z uporabo oznak, novo funkcijo, ki razvijalcem omogoča skupno rabo ene nadzorne plošče z več deset tisoč uporabniki, hkrati pa zagotavlja, da lahko vsak uporabnik vidi in ima dostop le do določenih podatkov. To pomeni, da ko neodvisni prodajalec programske opreme (ISV) v svojo aplikacijo doda nadzorno ploščo, vdelano v QuickSight, mu ni treba omogočiti svojih končnih uporabnikov v QuickSightu in lahko preprosto nastavijo oznake za filtriranje podatkov glede na to, kdo je nadzorna plošča postrežen. Na primer, če je ISV želel nastaviti nadzorno ploščo, ki naj bi bila v skupni rabi z 20,000 uporabniki v 100 strankah aplikacije, pri čemer imajo vsi uporabniki znotraj stranke dostop do enakih podatkov, vam ta nova funkcija omogoča skupno rabo ene nadzorne plošče za vse uporabnike, ne da bi morali nastaviti ali upravljati 20,000 uporabnikov v QuickSightu.
RLS, vsiljen z uporabo oznak, zagotavlja, da vsak končni uporabnik vidi samo podatke, ki so pomembni zanj, medtem ko se QuickSight samodejno prilagaja glede na sočasnost uporabnikov, da zagotovi, da vsak končni uporabnik vidi dosledno hitro delovanje. V tem prispevku si ogledamo, kako je to mogoče izvesti.
Pregled rešitev
Za vdelavo nadzornih plošč brez zagotavljanja uporabnikov uporabljamo API GenerateEmbedURLForAnonymousUser, ki deluje s QuickSightom cena zmogljivosti seje. S tem API-jem strežnik za vdelavo (logika v aplikaciji SaaS) določi in upravlja identiteto uporabnika, ki mu je prikazana nadzorna plošča (v nasprotju s tem, da je ta identiteta omogočena in upravljana znotraj QuickSighta).
Naslednji diagram prikazuje primer poteka dela vdelanih nadzornih plošč, ki ščiti podatke glede na to, kdo dostopa do aplikacije z uporabo RLS z oznakami.
V tem primeru ima ISV aplikacijo SaaS, do katere dostopajo dva končna uporabnika. Eden je vodja, drugi pa nadzornik gradbišča. Oba uporabnika dostopata do iste aplikacije in iste nadzorne plošče QuickSight, ki je vdelana v aplikacijo, in nista omogočena v QuickSightu. Ko nadzornik spletnega mesta dostopa do nadzorne plošče, vidi samo podatke, ki se nanašajo na njihovo spletno mesto, in ko upravitelj dostopa do nadzorne plošče, vidi podatke, ki se nanašajo na vsa spletna mesta, ki jih upravlja.
Da bi dosegli to vedenje, uporabljamo novo funkcijo, ki omogoča konfiguracijo varnosti na ravni vrstice z uporabo oznak. Ta način varovanja podatkov na vdelanih nadzornih ploščah deluje le, če so nadzorne plošče vdelane brez zagotavljanja uporabnikov (imenovano tudi anonimna vdelava). Postopek vključuje dva koraka:
- Nastavite ključe oznak na stolpce naborov podatkov, uporabljenih za izdelavo nadzorne plošče.
- Nastavite vrednosti za ključe oznak med izvajanjem, ko anonimno vdelate nadzorno ploščo.
Nastavite ključe oznak za stolpce v naborih podatkov, uporabljenih za izdelavo nadzorne plošče
ISV-ji ali razvijalci lahko nastavijo stolpce v naborih podatkov z uporabo CreateDataset
or UpdateDataset
API-ji, kot sledi:
V prejšnjem primeru kode, row-level-permission-tag-configuration
je element, ki ga lahko uporabite za definiranje ključev oznak v stolpcih nabora podatkov. Za vsako oznako lahko definirate naslednje neobvezne elemente:
- TagMultiValueDelimiter – Ko je ta možnost nastavljena na stolpec, vam omogoča, da oznaki med izvajanjem posredujete več kot eno vrednost, vrednosti pa so razmejene z nizom, nastavljenim za to možnost. V tem vzorcu je vejica nastavljena kot ločilni niz.
- MatchAllValue – Ko je ta možnost nastavljena na stolpec, vam omogoča posredovanje vseh vrednosti stolpca med izvajanjem, vrednosti pa so predstavljene z nizom, nastavljenim za to možnost. V tem vzorcu je zvezdica nastavljena za ujemanje z vsem nizom.
Ko definiramo svoje oznake, lahko ta pravila omogočimo ali onemogočimo z uporabo Status
element API-ja. V tem primeru je vrednost nastavljena na ENABLED
. Če želite onemogočiti pravila, je vrednost DISABLED
. Ko so oznake omogočene, lahko posredujemo vrednosti oznakam med izvajanjem, da zaščitimo podatke, prikazane glede na to, kdo dostopa do nadzorne plošče.
Vsak nabor podatkov ima lahko do 50 ključev oznak.
Prejeli smo naslednji odgovor za CreateDataset
or UpdateDataset
API-ji:
Omogoči avtorjem dostop do podatkov, zaščitenih s ključi oznak pri avtorski analizi
Ko so ključi oznak nastavljeni in omogočeni v naboru podatkov, je zavarovan. Ko avtorji uporabljajo ta nabor podatkov za ustvarjanje nadzorne plošče, ne vidijo nobenih podatkov. Pri ustvarjanju nadzorne plošče morajo imeti dovoljenja za ogled katerih koli podatkov v naboru podatkov. Če želite avtorjem QuickSight dati dovoljenje za ogled podatkov v naboru podatkov, ustvarite datoteko z dovoljenji ali nabor podatkov s pravili. Za več informacij glejte Ustvarjanje pravil za nabor podatkov za varnost na ravni vrstic. Sledi primer nabora podatkov o pravilih.
Uporabniško ime | ime_stolpca_1 | ime_stolpca_2 | ime_stolpca_3 |
admin/avtor vzorca |
V tem vzorčnem naboru podatkov je uporabniško ime avtorja navedeno v stolpcu UserName. Ostali trije stolpci so stolpci iz nabora podatkov, na katere smo nastavili ključe oznak. Vrednosti za te stolpce ostanejo prazne za avtorja, dodanega v to tabelo. To avtorju omogoča ogled vseh podatkov v teh stolpcih brez kakršnih koli omejitev, ko pripravlja analize.
Nastavite vrednosti za ključe oznak med izvajanjem, ko vdelate nadzorno ploščo
Ko so ključi oznak nastavljeni za stolpce naborov podatkov, razvijalci nastavijo vrednosti za ključe med izvajanjem, ko vdelajo nadzorno ploščo. Razvijalci kličejo API GenerateDashboardEmbedURLForAnonymousUser
za vdelavo nadzorne plošče in posredovanje vrednosti ključem oznak v elementu SessionTags
, kot je prikazano v naslednji vzorčni kodi:
Ker ta funkcija varuje podatke za uporabnike, ki niso omogočeni v QuickSightu, je klic API-ja namenjen AnonymousUser
in zato ta funkcija deluje samo z API-jem GenerateDashboardEmbedURLForAnonymousUser
.
Prejšnji primer kode ima naslednje komponente:
- za
tag_name_1
, nastavite dve vrednosti (value1
invalue2
) uporabljatiTagMultiValueDelimiter
določeno pri nastavitvi ključev oznak (v tem primeru vejica). - za
tag_name_2
, nastavite eno vrednost kot zvezdico. To omogoča temu ključu oznake, da ima dodeljene vse vrednosti za ta stolpec, ker smo definirali zvezdico kotMatchAllValue
pri prejšnji nastavitvi ključa oznake v stolpcu. - za
tag_name_3
, nastavite eno vrednost (value3
).
Definicija odziva API
Odziv API-ja ima EmbedURL
, Status
in RequestID
. Ta URL lahko vdelate v svojo stran HTML. Podatki na tej nadzorni plošči so zavarovani na podlagi vrednosti, posredovanih ključem oznak pri klicu API-ja za vdelavo GenerateDashboardEmbedURLForAnonymousUser
:
- EmbedUrl (niz) – URL za enkratno uporabo, ki ga lahko postavite na svojo spletno stran na strani strežnika, da vdelate svojo nadzorno ploščo. Ta URL je veljaven 5 minut. Operacija API-ja zagotavlja URL z
auth_code
vrednost, ki omogoča eno (in samo eno) prijavo v uporabniško sejo, ki velja do 10 ur. Ta URL upodablja nadzorno ploščo z uporabljenimi pravili RLS na podlagi vrednosti, nastavljenih za ključe oznak RLS. - Stanje (celo število) – HTTP status zahteve.
- RequestId (niz) – ID zahteve AWS za to operacijo.
Drobnozrnat nadzor dostopa
Natančen nadzor dostopa lahko dosežete z uporabo dinamičnega AWS upravljanje identitete in dostopa (IAM) oblikovanje politike. Za več informacij glejte Izolacija najemnikov SaaS z dinamično generiranimi pravilniki IAM. Pri uporabi GenerateEmbedUrlForAnonymousUser
API za vdelavo, morate v pravilniku IAM omeniti dve vrsti virov: ARN-je imenskega prostora, ki jim vaši anonimni uporabniki dejansko pripadajo, in ARN-je nadzorne plošče, ki jih je mogoče uporabiti v AuthorizedResourceArns
vrednost vhodnega parametra. Seje, ustvarjene s tem API-jem, lahko dostopajo do pooblaščenih virov in tistih (nadzornih plošč), ki so v skupni rabi z imenskim prostorom.
Ker so anonimni uporabniki del imenskega prostora, so jim dostopne vse nadzorne plošče, ki so v skupni rabi z imenskim prostorom, ne glede na to, ali so posredovane izrecno prek AuthorizedResourceArns
parameter.
Če želite omogočiti identiteti klicatelja, da ustvari URL za katerega koli uporabnika in katero koli nadzorno ploščo, je Resource
blok pravilnika je mogoče nastaviti na *
. Če želite dovoliti identiteti klicatelja, da ustvari URL za katerega koli anonimnega uporabnika v določenem imenskem prostoru (kot je npr. Tenant1
) Resource
del pravilnika je mogoče nastaviti na arn:aws:quicksight:us-east-1:<YOUR_AWS_ACCOUNT_ID>:namespace/Tenant1
. Enako velja za ID nadzorne plošče. Za dinamično ustvarjanje pravilnika lahko uporabite tudi ogradne oznake za imenski prostor in uporabnike.
Naslednja koda je primer pravilnika IAM:
Uporaba primera
OkTank je ISV v zdravstvenem prostoru. Imajo aplikacijo SaaS, ki jo uporabljajo različne bolnišnice v različnih regijah države za upravljanje svojih prihodkov. OkTank ima na tisoče zaposlenih v zdravstvu, ki dostopajo do njihove aplikacije in ima vgrajene operacije, povezane z njihovim poslovanjem, na nadzorni plošči QuickSight v svoji aplikaciji. OkTank ne želi ločeno upravljati svojih uporabnikov v QuickSightu in želi zaščititi podatke glede na to, kateri uporabnik iz katere bolnišnice dostopa do njihove aplikacije. OkTank ščiti podatke na nadzornih ploščah med izvajanjem z uporabo varnosti na ravni vrstice z uporabo oznak.
OkTank ima bolnišnice (North Hospital, South Hospital in Downtown Hospital) v regijah Central, East, South in West.
V tem primeru naslednji uporabniki dostopajo do aplikacije OkTank in vdelane nadzorne plošče. Vsak uporabnik ima določeno raven omejitvenih pravil, ki določajo, do katerih podatkov lahko dostopa na nadzornih ploščah. PowerUser
je super uporabnik, ki lahko vidi podatke za vse bolnišnice in regije.
Uporabnik aplikacije OkTank | Bolnišnica | Regija |
NorthUser | Severna bolnišnica | Srednji in vzhodni |
NorthAdmin | Severna bolnišnica | Vse regije |
SouthUser | Južna bolnišnica | South |
SouthAdmin | Južna bolnišnica | Vse regije |
poweruser | Vse bolnišnice | Vse regije |
Noben od teh uporabnikov ni bil omogočen v QuickSightu. OkTank te uporabnike upravlja v lastni aplikaciji in tako ve, kateri regiji in bolnišnici pripada posamezen uporabnik. Ko kateri koli od teh uporabnikov dostopa do vdelane nadzorne plošče QuickSight v aplikaciji, mora OkTank zavarovati podatke na nadzorni plošči, tako da lahko uporabniki vidijo samo podatke za svojo regijo in bolnišnico.
Najprej je OkTank ustvaril ključe oznak na naboru podatkov, ki ga uporabljajo za napajanje nadzorne plošče. V njihovem UpdateDataset
API klic, RowLevelPermissionTagConfiguration
element nabora podatkov je naslednji:
Drugič, med izvajanjem, ko vdelate nadzorno ploščo prek GenerateDashboardEmbedURLForAnonymousUser
API, so nastavili SessionTags
za vsakega uporabnika.
SessionTags
za NorthUser
v GenerateDashboardEmbedURLForAnonymousUser
Klic API-ja je naslednji:
SessionTags
za NorthAdmin
so, kot sledi:
SessionTags
za SouthUser
so, kot sledi:
SessionTags
za SouthAdmin
so, kot sledi:
SessionTags
za PowerUser
so, kot sledi:
Naslednji posnetek zaslona prikazuje, kaj SouthUser
videi, ki se nanašajo na južno bolnišnico v južni regiji.
Naslednji posnetek zaslona prikazuje, kaj SouthAdmin
vidi, ki se nanašajo na južno bolnišnico v vseh regijah.
Naslednji posnetek zaslona prikazuje, kaj PowerUser
vidi, ki se nanašajo na vse bolnišnice v vseh regijah.
OkTank je na podlagi oznak seje zaščitil podatke na vdelanih nadzornih ploščah, tako da vsak uporabnik vidi samo določene podatke glede na njihov dostop. Ti lahko dostop do nadzorne plošče kot enega od uporabnikov (s spremembo uporabnika v spustnem meniju zgoraj desno) in si oglejte, kako se spreminjajo podatki glede na izbranega uporabnika.
Na splošno lahko OkTank z varnostjo na ravni vrstic z uporabo oznak zagotovi prepričljivo izkušnjo analitike v svoji aplikaciji SaaS, hkrati pa poskrbi, da vsak uporabnik vidi samo ustrezne podatke, ne da bi mu bilo treba zagotoviti in upravljati uporabnike v QuickSightu. QuickSight ponuja zelo razširljivo in varno možnost analitike, ki jo lahko nastavite in uvedete v produkcijo v nekaj dneh, namesto v tednih ali mesecih prej.
zaključek
Kombinacija vdelave nadzorne plošče za uporabnike, ki niso omogočeni v QuickSightu, in varnosti na ravni vrstice z uporabo oznak omogoča razvijalcem in neodvisnim ponudnikom programov, da hitro in preprosto nastavijo prefinjeno, prilagojeno analitiko za svoje uporabnike aplikacij – vse brez kakršne koli nastavitve ali upravljanja infrastrukture, medtem ko se prilagaja na milijone uporabnikov . Za več posodobitev od QuickSight vgrajena analitika, Glej Kaj je novega v uporabniškem priročniku za Amazon QuickSight.
O avtorjih
Raji Sivasubramaniam je specializirani arhitekt rešitev pri AWS, ki se osredotoča na analitiko. Raji ima 20 let izkušenj pri oblikovanju celovitih rešitev za upravljanje podatkov v podjetjih, poslovno inteligenco in analitiko za podjetja s seznama Fortune 500 in Fortune 100 po vsem svetu. Ima poglobljene izkušnje na področju integriranih zdravstvenih podatkov in analitike s široko paleto naborov zdravstvenih podatkov, vključno z upravljanim trgom, ciljanjem na zdravnike in analitiko bolnikov. V prostem času Raji uživa v pohodništvu, jogi in vrtnarjenju.
Srikanth Baheti je Specialized World Wide Sr. Solution Architect za Amazon QuickSight. Kariero je začel kot svetovalec in delal za več zasebnih in državnih organizacij. Kasneje je delal za PerkinElmer Health and Sciences & eResearch Technology Inc, kjer je bil odgovoren za načrtovanje in razvoj spletnih aplikacij z visokim prometom, zelo razširljivih in vzdržljivih podatkovnih cevovodov za platforme za poročanje, ki uporabljajo storitve AWS in brezstrežniško računalništvo.
Kareem Syed-Mohammed je produktni vodja pri Amazon QuickSight. Osredotoča se na vgrajeno analitiko, API-je in izkušnje razvijalcev. Pred QuickSightom je delal pri AWS Marketplace in Amazon retail kot vodja projektov. Kareem je svojo kariero začel kot razvijalec in nato PM za tehnologije klicnih centrov, lokalni strokovnjak in oglase za Expedia. Kratek čas je delal kot svetovalec pri McKinsey and Company.
- '
- "
- &
- 000
- 100
- 11
- dostop
- Račun
- Ukrep
- oglasi
- vsi
- Amazon
- analitika
- API
- API-ji
- aplikacija
- uporaba
- aplikacije
- aplikacije
- Avtorji
- AWS
- izgradnjo
- poslovni
- Poslovna inteligenca
- klic
- kapaciteta
- Kariera
- Koda
- Stolpec
- Podjetja
- podjetje
- računalništvo
- svetovalec
- Stranke, ki so
- Armaturna plošča
- datum
- Upravljanje podatkov
- Razvojni
- Razvijalci
- Downtown
- Zaposleni
- Podjetje
- izkušnje
- FAST
- Feature
- vlada
- Zdravje
- zdravstveno varstvo
- tukaj
- visoka
- pohodništvo
- Bolnišnica
- bolnišnice
- Kako
- HTTPS
- IAM
- identiteta
- Vključno
- Podatki
- Infrastruktura
- Intelligence
- interaktivno
- IT
- Ključne
- tipke
- Stopnja
- lokalna
- Izdelava
- upravljanje
- Tržna
- tržnica
- Stave
- mesecev
- nova funkcija
- sever
- operacije
- Možnost
- Ostalo
- performance
- zdravnik
- Platforme
- politika
- moč
- zasebna
- Izdelek
- proizvodnja
- vir
- viri
- Odgovor
- Trgovina na drobno
- prihodki
- Roll
- pravila
- SaaS
- skaliranje
- ZNANOSTI
- varnost
- vidi
- izbran
- Brez strežnika
- Storitve
- nastavite
- nastavitev
- Delite s prijatelji, znanci, družino in partnerji :-)
- deli
- Kratke Hlače
- Spletna mesta
- So
- Software
- rešitve
- South
- Vesolje
- začel
- Izjava
- Status
- Tehnologije
- Tehnologija
- čas
- vrh
- Prometa
- posodobitve
- Uporabniki
- vrednost
- web
- spletne aplikacije
- West
- WHO
- v
- potek dela
- deluje
- svet
- let
- Joga