Amazon QuickSight egy teljesen felügyelt, felhőben natív üzleti intelligencia (BI) szolgáltatás, amely megkönnyíti az adatokhoz való csatlakozást, interaktív irányítópultok létrehozását, és ezek megosztását több tízezer felhasználóval akár magán a QuickSighton belül, akár szoftverbe ágyazva. szolgáltatás (SaaS) alkalmazások.
A QuickSight Enterprise Edition a közelmúltban a sorszintű biztonságot (RLS) címkékkel egészítette ki. Ez egy új funkció, amely lehetővé teszi a fejlesztők számára, hogy egyetlen irányítópultot több tízezer felhasználóval oszthassanak meg, miközben biztosítja, hogy minden felhasználó csak bizonyos adatokat lásson és férhessen hozzá. Ez azt jelenti, hogy amikor egy független szoftvergyártó (ISV) QuickSight-beágyazott irányítópultot ad hozzá az alkalmazásához, nem kell kiépítenie végfelhasználóit a QuickSight-ban, és egyszerűen beállíthat címkéket az adatok szűréséhez az alapján, hogy ki az irányítópult. hogy kiszolgálják. Például, ha egy ISV olyan irányítópultot akart létrehozni, amelyet egy alkalmazás 20,000 ügyfele 100 20,000 felhasználójával osztanak meg, és az ügyfélen belül minden felhasználó azonos adatokhoz fér hozzá, ez az új funkció lehetővé teszi, hogy egyetlen irányítópultot oszthasson meg minden felhasználó számára, anélkül, hogy be kellene állítania vagy kezelnie kellene a QuickSight XNUMX XNUMX felhasználóját.
A címkék használatával kikényszerített RLS biztosítja, hogy minden végfelhasználó csak a számára releváns adatokat lássa, míg a QuickSight automatikusan skálázódik a felhasználói párhuzamossághoz, hogy minden végfelhasználó folyamatosan gyors teljesítményt lásson. Ebben a bejegyzésben megvizsgáljuk, hogyan lehet ezt megvalósítani.
Megoldás áttekintése
Az irányítópultok felhasználói kiépítés nélküli beágyazásához az API-t használjuk GenerateEmbedURLForAnonymousUser, amely a QuickSight-tal működik munkamenet kapacitás árazás. Ezzel az API-val a beágyazószerver (a SaaS-alkalmazás logikája) meghatározza és kezeli annak a felhasználónak az identitását, akinek az irányítópult megjelenik (ellentétben azzal, hogy ezt az identitást a QuickSighton belül hozzák létre és kezelik).
A következő diagram egy példa munkafolyamatot mutat be beágyazott irányítópultokra, amelyek az alapján védik az adatokat, hogy ki éri el az alkalmazást RLS használatával címkékkel.
Ebben az esetben az ISV-nek van egy SaaS-alkalmazása, amelyhez két végfelhasználó fér hozzá. Az egyik menedzser, a másik pedig a helyszíni felügyelő. Mindkét felhasználó ugyanahhoz az alkalmazáshoz és az alkalmazásba beágyazott QuickSight irányítópulthoz fér hozzá, és nincsenek kiépítve a QuickSightban. Amikor a webhely felügyelője hozzáfér az irányítópulthoz, csak a saját webhelyére vonatkozó adatokat látja, és amikor a menedzser hozzáfér az irányítópulthoz, az összes általa kezelt webhely adatait látja.
Ennek a viselkedésnek az eléréséhez egy új funkciót használunk, amely lehetővé teszi a sorszintű biztonság címkék segítségével történő konfigurálását. Ez a módszer a beágyazott irányítópultok adatvédelmére csak akkor működik, ha az irányítópultok felhasználói hozzáférés nélkül vannak beágyazva (más néven névtelen beágyazás). A folyamat két lépésből áll:
- Állítsa be a címkekulcsokat az irányítópult felépítéséhez használt adatkészletek oszlopaiban.
- Állítsa be a címkekulcsok értékeit futás közben, amikor névtelenül ágyazza be az irányítópultot.
Állítsa be a címkekulcsokat az irányítópult felépítéséhez használt adatkészletek oszlopaiban
Az ISV-k vagy a fejlesztők oszlopokat állíthatnak be az adatkészleteken a CreateDataset
or UpdateDataset
API-k a következők:
Az előző példakódban row-level-permission-tag-configuration
az az elem, amellyel megadhat címkekulcsokat egy adatkészlet oszlopaiban. Minden címkéhez a következő választható elemeket határozhatja meg:
- TagMultiValueDelimiter – Ha egy oszlopon be van állítva, ez a beállítás lehetővé teszi, hogy egynél több értéket adjon át a címkének futás közben, és az értékeket az ehhez a beállításhoz beállított karakterlánc választja el. Ebben a mintában egy vessző van beállítva határoló karakterláncként.
- MatchAllValue – Ha ez a beállítás oszlopon van beállítva, lehetővé teszi az oszlop összes értékének átadását futás közben, és az értékeket az ehhez a beállításhoz beállított karakterlánc képviseli. Ebben a mintában egy csillag van beállítva az összes karakterlánchoz.
Miután meghatároztuk címkéinket, engedélyezhetjük vagy letilthatjuk ezeket a szabályokat a Status
az API eleme. Ebben az esetben az érték a következőre van állítva ENABLED
. A szabályok letiltásához az érték a DISABLED
. A címkék engedélyezése után értékeket adhatunk át a címkéknek futás közben, hogy biztosítsuk a megjelenített adatokat attól függően, hogy ki fér hozzá az irányítópulthoz.
Minden adatkészlet legfeljebb 50 címkekulcsot tartalmazhat.
Az alábbi választ kapjuk a CreateDataset
or UpdateDataset
API-k:
Engedélyezze a szerzőknek, hogy hozzáférjenek a címkekulcsokkal védett adatokhoz a szerzői elemzés során
Miután a címkék kulcsait beállították és engedélyezték az adatkészleten, az védetté válik. Azok a szerzők, akik ezt az adatkészletet használják irányítópult létrehozására, nem látnak adatokat. Az irányítópult létrehozásakor engedélyt kell kapniuk az adatkészletben lévő adatok megtekintéséhez. Ha engedélyt szeretne adni a QuickSight szerzőinek az adatkészletben lévő adatok megtekintéséhez, hozzon létre egy engedélyfájlt vagy egy szabályadatkészletet. További információkért lásd Adatkészlet-szabályok létrehozása a sorszintű biztonsághoz. A következő egy példa szabályadatkészlet.
Felhasználónév | oszlop_név_1 | oszlop_név_2 | oszlop_név_3 |
admin/mintaszerző |
Ebben a mintaadatkészletben a szerző felhasználóneve szerepel a Felhasználónév oszlopban. A másik három oszlop az adathalmaz oszlopai, amelyeken a címkekulcsokat beállítjuk. A táblázathoz hozzáadott szerző értékei üresen maradnak ezekben az oszlopokban. Ez lehetővé teszi a szerző számára, hogy az ezekben az oszlopokban lévő összes adatot korlátozás nélkül lássa, amikor elemzéseket készít.
Az irányítópult beágyazásakor futás közben állítson be értékeket a címkekulcsokhoz
Miután a címkekulcsokat beállították az adatkészletek oszlopaihoz, a fejlesztők az irányítópult beágyazásakor futás közben állítják be a kulcsok értékeit. A fejlesztők az API-t hívják GenerateDashboardEmbedURLForAnonymousUser
az irányítópult beágyazásához és az értékek átadásához az elemben lévő címkekulcsokhoz SessionTags
, ahogy az a következő példakódban látható:
Mivel ez a funkció a QuickSightban nem rendelkező felhasználók adatait védi, az API-hívás a következőhöz való AnonymousUser
csak és ezért ez a funkció csak az API-val működik GenerateDashboardEmbedURLForAnonymousUser
.
Az előző példakód a következő összetevőket tartalmazza:
- A
tag_name_1
, két értéket állít be (value1
és avalue2
) használni aTagMultiValueDelimiter
a címkekulcsok beállításakor (ebben az esetben vessző). - A
tag_name_2
, egy értéket csillagként állít be. Ez lehetővé teszi, hogy ehhez a címkekulcshoz az oszlop összes értéke hozzá legyen rendelve, mivel a csillagot a következőként határoztuk megMatchAllValue
amikor korábban beállít egy címkekulcsot az oszlopra. - A
tag_name_3
, beállít egy értéket (value3
).
API válasz meghatározása
Az API válasza a EmbedURL
, Status
és RequestID
. Ezt az URL-t beágyazhatja HTML-oldalába. Az ezen az irányítópulton lévő adatok a beágyazási API meghívásakor a címkekulcsoknak átadott értékek alapján vannak biztonságban GenerateDashboardEmbedURLForAnonymousUser
:
- EmbedUrl (karakterlánc) – Egy egyszer használatos URL, amelyet elhelyezhet a szerveroldali weboldalon az irányítópult beágyazásához. Ez az URL 5 percig érvényes. Az API művelet az URL-t egy
auth_code
érték, amely egy (és csak egy) bejelentkezést tesz lehetővé egy felhasználói munkamenethez, amely legfeljebb 10 óráig érvényes. Ez az URL megjeleníti az irányítópultot az RLS-szabályokkal az RLS-címkekulcsokhoz beállított értékek alapján. - Állapot (egész szám) – A kérés HTTP állapota.
- RequestId (karakterlánc) – Az AWS-kérés azonosítója ehhez a művelethez.
Finomszemcsés hozzáférés-szabályozás
Finom szemcsés hozzáférés-szabályozás érhető el a dinamikus használatával AWS Identity and Access Management (IAM) politika létrehozása. További információkért lásd SaaS-bérlők elkülönítése dinamikusan generált IAM-házirendekkel. Amikor a GenerateEmbedUrlForAnonymousUser
API beágyazáshoz két erőforrástípust kell megemlítenie az IAM-házirendben: a névtér ARN-jeit, amelyekhez a névtelen felhasználók virtuálisan tartoznak, és a műszerfali ARN-eket, amelyek használhatók a AuthorizedResourceArns
bemeneti paraméter értéke. Az ezen API-val generált munkamenetek hozzáférhetnek az engedélyezett erőforrásokhoz és a névtérrel megosztott erőforrásokhoz (irányítópultokhoz).
Mivel az anonim felhasználók egy névtér részét képezik, a névtérrel megosztott összes irányítópult elérhető számukra, függetlenül attól, hogy a névtéren keresztül kifejezetten átadták-e őket. AuthorizedResourceArns
paraméter.
Annak érdekében, hogy a hívó azonosítója URL-t generáljon bármely felhasználó és bármely irányítópult számára, a Resource
a házirend blokkja állítható be *
. Annak lehetővé tétele, hogy a hívó azonosítója létrehozzon egy URL-t bármely névtelen felhasználó számára egy adott névtérben (pl Tenant1
), A Resource
a házirend egy részét be lehet állítani arn:aws:quicksight:us-east-1:<YOUR_AWS_ACCOUNT_ID>:namespace/Tenant1
. Ugyanez vonatkozik az irányítópult-azonosítóra is. A dinamikus házirend létrehozásához helyőrzőket is használhat a névtérhez és a felhasználókhoz.
A következő kód egy példa IAM-szabályzat:
Használási eset
Az OkTank egy ISV az egészségügyi területen. Rendelkeznek egy SaaS-alkalmazással, amelyet az ország különböző régióiban különböző kórházak használnak bevételeik kezelésére. Az OkTank egészségügyi alkalmazottak ezrei férnek hozzá az alkalmazásukhoz, és a vállalkozásukkal kapcsolatos műveleteket egy QuickSight irányítópultba ágyazták be az alkalmazásukban. Az OkTank nem akarja külön kezelni a felhasználóit a QuickSightban, és az alapján akarja biztonságossá tenni az adatokat, hogy melyik kórházból melyik felhasználó fér hozzá az alkalmazásához. Az OkTank futás közben védi az adatokat a műszerfalakon sorszintű biztonsággal, címkék használatával.
Az OkTank kórházakkal rendelkezik (Északi Kórház, Déli Kórház és Belvárosi Kórház) a középső, keleti, déli és nyugati régiókban.
Ebben a példában a következő felhasználók érik el az OkTank alkalmazását és a beágyazott irányítópultot. Minden felhasználó rendelkezik bizonyos szintű korlátozási szabályokkal, amelyek meghatározzák, hogy milyen adatokhoz férhetnek hozzá az irányítópultokon. PowerUser
egy szuper felhasználó, aki láthatja az összes kórház és régió adatait.
Az OkTank alkalmazásának felhasználója | Kórház | Vidék |
NorthUser | Északi kórház | Közép és Kelet |
NorthAdmin | Északi kórház | Minden régió |
SouthUser | Déli Kórház | Dél |
SouthAdmin | Déli Kórház | Minden régió |
poweruser | Minden kórház | Minden régió |
Ezen felhasználók egyike sincs kiépítve a QuickSightban. Az OkTank ezeket a felhasználókat a saját alkalmazásában kezeli, így tudja, hogy az egyes felhasználók melyik régióhoz és kórházhoz tartoznak. Amikor ezen felhasználók bármelyike hozzáfér az alkalmazásba beágyazott QuickSight irányítópulthoz, az OkTank-nak biztosítania kell az adatokat az irányítópulton, hogy a felhasználók csak a régiójuk és a kórházuk adatait lássák.
Először az OkTank címkekulcsokat hozott létre azon az adatkészleten, amelyet az irányítópult működtetésére használnak. Az ő UpdateDataset
API hívás, a RowLevelPermissionTagConfiguration
az adatkészlet eleme a következő:
Másodszor, futásidőben, amikor az irányítópult beágyazásakor a GenerateDashboardEmbedURLForAnonymousUser
API, beállítják SessionTags
minden felhasználó számára.
SessionTags
mert NorthUser
a GenerateDashboardEmbedURLForAnonymousUser
Az API-hívások a következők:
SessionTags
mert NorthAdmin
a következő:
SessionTags
mert SouthUser
a következő:
SessionTags
mert SouthAdmin
a következő:
SessionTags
mert PowerUser
a következő:
A következő képernyőképen látható, hogy mit SouthUser
a déli régióban található Déli Kórházra vonatkozik.
A következő képernyőképen látható, hogy mit SouthAdmin
minden régióban a Déli Kórházra vonatkozik.
A következő képernyőképen látható, hogy mit PowerUser
minden régió összes kórházára vonatkozik.
A munkamenet-címkék alapján az OkTank a beágyazott irányítópultokon tárolt adatokat úgy, hogy minden felhasználó csak a hozzáférése alapján látja a konkrét adatokat. tudsz hozzáférjen a műszerfalhoz a felhasználók egyikeként (a jobb felső sarokban található legördülő menüben a felhasználó megváltoztatásával), és megtekintheti, hogyan változnak az adatok a kiválasztott felhasználó alapján.
Összességében a címkéket használó sorszintű biztonsággal az OkTank lenyűgöző elemzési élményt tud nyújtani SaaS-alkalmazásában, miközben gondoskodik arról, hogy minden felhasználó csak a megfelelő adatokat lássa anélkül, hogy a QuickSight-ban ki kellene építenie és kezelnie kellene a felhasználókat. A QuickSight nagymértékben méretezhető, biztonságos elemzési lehetőséget kínál, amelyet beállíthat és napok alatt üzembe helyezhet, nem pedig heteket vagy hónapokat korábban.
Következtetés
A QuickSight-ban nem rendelkező felhasználók beágyazott irányítópultja és a címkéket használó sorszintű biztonság kombinációja lehetővé teszi a fejlesztők és független szoftverfejlesztők számára, hogy gyorsan és egyszerűen állítsanak be kifinomult, testreszabott elemzéseket az alkalmazás felhasználói számára – mindezt infrastruktúra-beállítás vagy kezelés nélkül, miközben felhasználók millióira méretezhetik. . További frissítések innen: QuickSight beágyazott elemzésLásd: Az Amazon QuickSight felhasználói kézikönyv újdonságai.
A szerzőkről
Raji Sivasubramaniam az AWS megoldások specialistája, aki az elemzésekre összpontosít. Raji 20 éves tapasztalattal rendelkezik a végpontokig terjedő vállalati adatkezelési, üzleti intelligencia és elemzési megoldások kidolgozásában a Fortune 500 és Fortune 100 cégek számára szerte a világon. Mélyreható tapasztalattal rendelkezik az integrált egészségügyi adatok és elemzések terén, számos egészségügyi adatkészlettel, beleértve a menedzselt piacot, az orvosi célzást és a betegelemzést. Szabadidejében Raji szeret túrázni, jógázni és kertészkedni.
Srikanth Baheti az Amazon QuickSight speciális World Wide Sr. Solution Architect. Pályáját tanácsadóként kezdte, és számos magán- és állami szervezetnél dolgozott. Később a PerkinElmer Health and Sciences & eResearch Technology Inc.-nél dolgozott, ahol nagy forgalmú webalkalmazások, nagymértékben skálázható és karbantartható adatfolyamok tervezéséért és fejlesztéséért volt felelős az AWS szolgáltatásokat és szerver nélküli számítástechnikát használó jelentési platformokhoz.
Kareem Syed-Mohammed az Amazon QuickSight termékmenedzsere. A beágyazott elemzésekre, API-kra és fejlesztői tapasztalatokra összpontosít. A QuickSight előtt az AWS Marketplace-nél és az Amazon kiskereskedelménél dolgozott miniszterelnökként. Kareem fejlesztőként, majd PM-ként kezdte karrierjét a call center technológiák, a Local Expert és az Ads for Expedia területén. Rövid ideig tanácsadóként dolgozott a McKinsey and Company-nál.
- '
- "
- &
- 000
- 100
- 11
- hozzáférés
- Fiók
- Akció
- hirdetések
- Minden termék
- amazon
- analitika
- api
- API-k
- app
- Alkalmazás
- alkalmazások
- alkalmazások
- szerzők
- AWS
- épít
- üzleti
- üzleti intelligencia
- hívás
- Kapacitás
- Karrier
- kód
- Oszlop
- Companies
- vállalat
- számítástechnika
- szaktanácsadó
- Ügyfelek
- műszerfal
- dátum
- adatkezelés
- Fejlesztő
- fejlesztők
- Belváros
- alkalmazottak
- Vállalkozás
- tapasztalat
- GYORS
- Funkció
- Kormány
- Egészség
- egészségügyi
- itt
- Magas
- turisztika
- Kórház
- kórházak
- Hogyan
- HTTPS
- IAM
- Identitás
- Beleértve
- információ
- Infrastruktúra
- Intelligencia
- interaktív
- IT
- Kulcs
- kulcsok
- szint
- helyi
- Gyártás
- vezetés
- piacára
- piactér
- Mérkőzés
- hónap
- új funkció
- Északi
- Művelet
- opció
- Más
- teljesítmény
- orvos
- Platformok
- politika
- hatalom
- magán
- Termékek
- Termelés
- forrás
- Tudástár
- válasz
- kiskereskedelem
- jövedelem
- Tekercs
- szabályok
- SaaS
- skálázás
- TUDOMÁNYOK
- biztonság
- lát
- kiválasztott
- vagy szerver
- Szolgáltatások
- készlet
- beállítás
- Megosztás
- megosztott
- rövid
- Webhely (ek)
- So
- szoftver
- Megoldások
- Dél
- Hely
- kezdődött
- nyilatkozat
- Állapot
- Technologies
- Technológia
- idő
- felső
- forgalom
- Frissítés
- Felhasználók
- érték
- háló
- webes alkalmazások
- Nyugati
- WHO
- belül
- munkafolyamat
- művek
- világ
- év
- Jóga