Amazon QuickSight Verilerinize bağlanmayı, etkileşimli gösterge tabloları oluşturmayı ve bunları QuickSight'ın kendi içinde veya bir yazılım olarak gömülü olarak on binlerce kullanıcıyla paylaşmayı kolaylaştıran, tamamen yönetilen, bulutta yerel bir iş zekası (BI) hizmetidir. hizmet (SaaS) uygulamaları.
QuickSight Enterprise Edition yakın zamanda etiketleri kullanarak satır düzeyinde güvenlik (RLS) ekledi; bu, geliştiricilerin tek bir kontrol panelini on binlerce kullanıcıyla paylaşmasına olanak tanırken her kullanıcının yalnızca belirli verileri görebilmesini ve bunlara erişebilmesini sağlayan yeni bir özelliktir. Bu, bağımsız bir yazılım satıcısının (ISV) uygulamasına QuickSight yerleşik bir kontrol paneli eklediğinde, son kullanıcılarına QuickSight'ta yetki vermek zorunda olmadıkları ve kontrol panelinin kim olduğuna bağlı olarak verileri filtrelemek için etiketleri kolayca ayarlayabilecekleri anlamına gelir. servis ediliyor. Örneğin, bir ISV, bir uygulamanın 20,000 müşterisindeki 100 kullanıcıyla paylaşılacak ve müşteri içindeki tüm kullanıcıların aynı verilere erişebileceği bir kontrol paneli ayarlamak isterse, bu yeni özellik, tek bir kontrol panelini QuickSight'taki 20,000 kullanıcıyı ayarlamanıza veya yönetmenize gerek kalmadan tüm kullanıcılar.
Etiketler kullanılarak uygulanan RLS, her son kullanıcının yalnızca kendisiyle ilgili verileri görmesini sağlarken QuickSight, her son kullanıcının tutarlı bir şekilde hızlı performans görmesini sağlamak için kullanıcı eş zamanlılığını karşılayacak şekilde otomatik olarak ölçeklenir. Bu yazıda bunun nasıl uygulanabileceğine bakıyoruz.
Çözüme genel bakış
Kullanıcı yetkilendirmesi olmadan kontrol panellerini yerleştirmek için API'yi kullanırız Anonim Kullanıcı İçinEmbedURL OluşturQuickSight'la çalışan oturum kapasitesi fiyatlandırması. Bu API ile yerleştirme sunucusu (SaaS uygulamasındaki mantık), kontrol panelinin görüntülendiği kullanıcının kimliğini belirler ve yönetir (bu kimliğin QuickSight içinde sağlanması ve yönetilmesinin aksine).
Aşağıdaki şemada, RLS etiketlerini kullanarak uygulamaya kimin eriştiğine bağlı olarak verileri güvence altına alan gömülü kontrol panellerinin örnek bir iş akışı gösterilmektedir.
Bu durumda, bir ISV'nin iki son kullanıcı tarafından erişilen bir SaaS uygulaması vardır. Biri yönetici, diğeri site sorumlusu. Her iki kullanıcı da aynı uygulamaya ve uygulamaya gömülü aynı QuickSight kontrol paneline erişir ve QuickSight'ta yetkilendirilmezler. Site sorumlusu kontrol paneline eriştiğinde yalnızca kendi sitesine ait verileri görür, yönetici kontrol paneline eriştiğinde ise yönettiği tüm sitelere ait verileri görür.
Bu davranışı elde etmek için, satır düzeyinde güvenliğin etiketleri kullanarak yapılandırılmasını sağlayan yeni bir özellik kullanıyoruz. Gömülü kontrol panellerindeki verilerin güvenliğinin sağlanmasına yönelik bu yöntem, yalnızca kontrol panelleri kullanıcı yetkilendirmesi olmadan katıştırıldığında çalışır (aynı zamanda anonim yerleştirme). Süreç iki adım içerir:
- Kontrol panelini oluşturmak için kullanılan veri kümelerinin sütunlarına etiket anahtarları ayarlayın.
- Kontrol panelini anonim olarak yerleştirirken çalışma zamanında etiket anahtarları için değerleri ayarlayın.
Kontrol panelini oluşturmak için kullanılan veri kümelerindeki sütunlarda etiket anahtarları ayarlayın
ISV'ler veya geliştiriciler veri kümelerindeki sütunları aşağıdakileri kullanarak ayarlayabilir: CreateDataset
or UpdateDataset
API'ler aşağıdaki gibidir:
Önceki örnek kodda, row-level-permission-tag-configuration
bir veri kümesinin sütunlarındaki etiket anahtarlarını tanımlamak için kullanabileceğiniz öğedir. Her etiket için aşağıdaki isteğe bağlı öğeleri tanımlayabilirsiniz:
- EtiketÇoklu Değer Sınırlayıcı – Bu seçenek bir sütunda ayarlandığında, çalışma zamanında etikete birden fazla değer aktarmanıza olanak tanır ve değerler, bu seçenek için ayarlanan dizeyle sınırlandırılır. Bu örnekte sınırlayıcı dize olarak virgül ayarlanmıştır.
- MatchAllValue – Bu seçenek bir sütunda ayarlandığında çalışma zamanında bir sütunun tüm değerlerini aktarmanıza olanak tanır ve değerler bu seçenek için ayarlanan dizeyle temsil edilir. Bu örnekte, tüm dizelerle eşleşecek şekilde bir yıldız işareti ayarlanmıştır.
Etiketlerimizi tanımladıktan sonra bu kuralları aşağıdaki komutu kullanarak etkinleştirebilir veya devre dışı bırakabiliriz. Status
API'nin öğesi. Bu durumda değer şu şekilde ayarlanır: ENABLED
. Kuralları devre dışı bırakmak için değer: DISABLED
. Etiketler etkinleştirildikten sonra, kontrol paneline kimin eriştiğine bağlı olarak görüntülenen verilerin güvenliğini sağlamak için çalışma zamanında etiketlere değerler aktarabiliriz.
Her veri kümesinde en fazla 50 etiket anahtarı bulunabilir.
için aşağıdaki yanıtı alıyoruz. CreateDataset
or UpdateDataset
API:
Analiz yazarken yazarların etiket anahtarlarıyla korunan verilere erişmesine olanak tanıyın
Veri kümesinde etiket anahtarları ayarlanıp etkinleştirildikten sonra güvenliği sağlanır. Yazarlar, bir kontrol paneli yazmak için bu veri kümesini kullanırken herhangi bir veri görmez. Bir kontrol paneli yazarken veri kümesindeki herhangi bir veriyi görmelerine izin verilmesi gerekir. QuickSight yazarlarına veri kümesindeki verileri görme izni vermek için bir izin dosyası veya kural veri kümesi oluşturun. Daha fazla bilgi için bakınız Satır Düzeyinde Güvenlik için Veri Kümesi Kuralları Oluşturma. Aşağıda örnek bir kural veri kümesi yer almaktadır.
KullanıcıAdı | sütun_adı_1 | sütun_adı_2 | sütun_adı_3 |
yönetici/örnek yazar |
Bu örnek veri kümesinde, yazarın kullanıcı adı KullanıcıAdı sütununda listelenmiştir. Diğer üç sütun ise etiket anahtarlarını ayarladığımız veri kümesindeki sütunlardır. Bu tabloya eklenen yazar için bu sütunların değerleri boş bırakılır. Bu, yazarın analiz yazarken bu sütunlardaki tüm verileri herhangi bir kısıtlama olmadan görmesine olanak tanır.
Kontrol panelini yerleştirirken çalışma zamanında etiket tuşlarına değerleri ayarlayın
Veri kümelerinin sütunları için etiket anahtarları ayarlandıktan sonra geliştiriciler, kontrol panelini yerleştirirken çalışma zamanında anahtarlara değerleri ayarlar. Geliştiriciler API'yi çağırıyor GenerateDashboardEmbedURLForAnonymousUser
kontrol panelini yerleştirmek ve değerleri öğedeki etiket tuşlarına iletmek için SessionTags
, aşağıdaki örnek kodda gösterildiği gibi:
Bu özellik QuickSight'ta yetkilendirilmeyen kullanıcılar için verileri güvence altına aldığından, API çağrısı AnonymousUser
yalnızca ve dolayısıyla bu özellik yalnızca API ile çalışır GenerateDashboardEmbedURLForAnonymousUser
.
Önceki örnek kod aşağıdaki bileşenlere sahiptir:
- İçin
tag_name_1
, iki değer belirlersiniz (value1
vevalue2
) kullanmakTagMultiValueDelimiter
etiket tuşlarını ayarlarken tanımlanır (bu durumda virgül). - İçin
tag_name_2
, bir değeri yıldız işareti olarak ayarlarsınız. Bu, yıldız işaretini şu şekilde tanımladığımızdan, bu etiket anahtarının söz konusu sütun için tüm değerleri atamasını sağlar.MatchAllValue
daha önce sütunda bir etiket anahtarı ayarlarken. - İçin
tag_name_3
, bir değer ayarlarsınız (value3
).
API yanıt tanımı
API'nin yanıtı şu şekildedir: EmbedURL
, Status
, ve RequestID
. Bu URL'yi HTML sayfanıza gömebilirsiniz. Bu kontrol panelindeki verilerin güvenliği, yerleştirme API'si çağrılırken etiket anahtarlarına iletilen değerlere göre sağlanır GenerateDashboardEmbedURLForAnonymousUser
:
- EmbedUrl (dize) – Kontrol panelinizi yerleştirmek için sunucu tarafı web sayfanıza yerleştirebileceğiniz tek kullanımlık bir URL. Bu URL 5 dakika süreyle geçerlidir. API işlemi URL'ye bir
auth_code
10 saate kadar geçerli olan bir kullanıcı oturumunda bir (ve yalnızca bir) oturum açmayı sağlayan değer. Bu URL, kontrol panelini, RLS etiket anahtarları için ayarlanan değerlere göre uygulanan RLS kurallarıyla oluşturur. - Durum (tamsayı) – İsteğin HTTP durumu.
- İstek Kimliği (dize) – Bu işlem için AWS istek kimliği.
İnce taneli erişim kontrolü
Dinamik kullanarak ayrıntılı erişim kontrolü elde edebilirsiniz. AWS Kimlik ve Erişim Yönetimi (IAM) politika oluşturma. Daha fazla bilgi için bakınız SaaS Kiracılarını Dinamik Olarak Oluşturulan IAM Politikalarıyla Yalıtma. Kullanırken GenerateEmbedUrlForAnonymousUser
Yerleştirme API'si için IAM politikasında iki kaynak türünden bahsetmeniz gerekir: anonim kullanıcılarınızın sanal olarak ait olduğu ad alanı ARN'leri ve AuthorizedResourceArns
parametre değerini girin. Bu API kullanılarak oluşturulan oturumlar yetkili kaynaklara ve ad alanıyla paylaşılanlara (kontrol panelleri) erişebilir.
Anonim kullanıcılar bir ad alanının parçası olduğundan, ad alanıyla paylaşılan tüm kontrol panellerine, ad alanı aracılığıyla açıkça aktarılıp aktarılmadığına bakılmaksızın, bu kullanıcılar tarafından erişilebilir. AuthorizedResourceArns
parametre.
Arayanın kimliğinin herhangi bir kullanıcı ve herhangi bir kontrol paneli için bir URL oluşturmasına izin vermek için Resource
politika bloğu şu şekilde ayarlanabilir: *
. Arayanın kimliğinin, belirli bir ad alanındaki (örneğin, Tenant1
) Resource
Politikanın bir kısmı şu şekilde ayarlanabilir: arn:aws:quicksight:us-east-1:<YOUR_AWS_ACCOUNT_ID>:namespace/Tenant1
. Bu, kontrol paneli kimliği için de aynıdır. Dinamik ilke oluşturmak için ad alanı ve kullanıcılar için yer tutucuları da kullanabilirsiniz.
Aşağıdaki kod örnek bir IAM politikasıdır:
Kullanım örneği
OkTank sağlık alanında bir ISV'dir. Gelirlerini yönetmek için ülkenin farklı bölgelerindeki farklı hastaneler tarafından kullanılan bir SaaS uygulaması var. OkTank'ın uygulamasına erişen binlerce sağlık çalışanı bulunmaktadır ve işleriyle ilgili operasyonları uygulamalarında bir QuickSight kontrol paneline yerleştirmiştir. OkTank, kullanıcılarını QuickSight'ta ayrı ayrı yönetmek istemiyor ve hangi kullanıcının hangi hastaneden uygulamaya eriştiğine bağlı olarak verileri güvence altına almak istiyor. OkTank, etiketleri kullanarak satır düzeyinde güvenlik kullanarak çalışma zamanında kontrol panellerindeki verileri güvence altına alıyor.
OkTank'ın Orta, Doğu, Güney ve Batı bölgelerinde hastaneleri (Kuzey Hastanesi, Güney Hastanesi ve Downtown Hastanesi) bulunmaktadır.
Bu örnekte aşağıdaki kullanıcılar OkTank uygulamasına ve yerleşik kontrol paneline erişmektedir. Her kullanıcının kontrol panellerinde hangi verilere erişebileceğini tanımlayan belirli düzeyde kısıtlama kuralları vardır. PowerUser
tüm hastane ve bölgelere ait verileri görebilen süper kullanıcıdır.
OkTank uygulamasının kullanıcısı | Hastane | Bölge |
Kuzey Kullanıcısı | Kuzey Hastanesi | Orta ve Doğu |
Kuzey Yöneticisi | Kuzey Hastanesi | Tüm bölgeler |
Güney Kullanıcısı | Güney Hastanesi | güney |
GüneyYönetici | Güney Hastanesi | Tüm bölgeler |
Güç kullanıcısı | tüm hastaneler | Tüm bölgeler |
Bu kullanıcıların hiçbirinin QuickSight'ta yetkilendirmesi yapılmadı. OkTank bu kullanıcıları kendi uygulamasında yönetiyor ve dolayısıyla her kullanıcının hangi bölgeye ve hastaneye ait olduğunu biliyor. Bu kullanıcılardan herhangi biri uygulamadaki yerleşik QuickSight kontrol paneline eriştiğinde OkTank, kullanıcıların yalnızca kendi bölgelerine ve hastanelerine ait verileri görebilmesi için kontrol panelindeki verileri güvence altına almalıdır.
İlk olarak OkTank, kontrol panelini güçlendirmek için kullandıkları veri kümesinde etiket anahtarları oluşturdu. onların UpdateDataset
API çağrısı, RowLevelPermissionTagConfiguration
veri kümesindeki öğe aşağıdaki gibidir:
İkincisi, çalışma zamanında kontrol panelini GenerateDashboardEmbedURLForAnonymousUser
API'yi belirlediler SessionTags
her kullanıcı için.
SessionTags
için NorthUser
içinde GenerateDashboardEmbedURLForAnonymousUser
API çağrısı aşağıdaki gibidir:
SessionTags
için NorthAdmin
aşağıdaki gibidir:
SessionTags
için SouthUser
aşağıdaki gibidir:
SessionTags
için SouthAdmin
aşağıdaki gibidir:
SessionTags
için PowerUser
aşağıdaki gibidir:
Aşağıdaki ekran görüntüsü ne olduğunu gösterir SouthUser
Güney bölgesindeki Güney Hastanesi ile ilgili görüyor.
Aşağıdaki ekran görüntüsü ne olduğunu gösterir SouthAdmin
Tüm bölgelerde Güney Hastanesi ile ilgili görüyor.
Aşağıdaki ekran görüntüsü ne olduğunu gösterir PowerUser
Tüm bölgelerdeki tüm hastanelerle ilgili görüyor.
Oturum etiketlerini temel alan OkTank, yerleşik kontrol panellerindeki verileri güvence altına almıştır, böylece her kullanıcı yalnızca erişimlerine bağlı olarak belirli verileri görebilir. Yapabilirsiniz kontrol paneline erişin kullanıcılardan biri olarak (sağ üstteki açılır menüden kullanıcıyı değiştirerek) ve verilerin seçilen kullanıcıya göre nasıl değiştiğini görün.
Genel olarak, etiketleri kullanan satır düzeyinde güvenlik sayesinde OkTank, SaaS uygulamaları içinde etkileyici bir analiz deneyimi sunabiliyor ve aynı zamanda QuickSight'ta kullanıcıları yetkilendirmek ve yönetmek zorunda kalmadan her kullanıcının yalnızca uygun verileri görmesini sağlıyor. QuickSight, haftalar veya aylar yerine birkaç gün içinde kurup üretime sunabileceğiniz, yüksek düzeyde ölçeklenebilir, güvenli bir analiz seçeneği sunar.
Sonuç
QuickSight'ta yetkilendirilmemiş kullanıcılar için yerleşik gösterge panosu ve etiketler kullanılarak satır düzeyinde güvenlik kombinasyonu, geliştiricilerin ve ISV'lerin uygulama kullanıcıları için hızlı ve kolay bir şekilde karmaşık, özelleştirilmiş analitikler kurmasına olanak tanır; bunların tümü milyonlarca kullanıcıya ölçeklenirken herhangi bir altyapı kurulumu veya yönetimine gerek yoktur. . Daha fazla güncelleme için QuickSight yerleşik analitiğiBakın Amazon QuickSight Kullanıcı Kılavuzundaki Yenilikler.
Yazarlar Hakkında
Raji Sivasubramaniam AWS'de Analytics'e odaklanan Uzman Çözüm Mimarıdır. Raji, dünya genelinde Fortune 20 ve Fortune 500 şirketleri için uçtan uca Kurumsal Veri Yönetimi, İş Zekası ve Analitik çözümlerinin mimarisinde 100 yıllık deneyime sahiptir. Yönetilen pazar, doktor hedefleme ve hasta analitiği de dahil olmak üzere çok çeşitli sağlık hizmeti veri kümeleriyle entegre sağlık verileri ve analitiği konusunda derin deneyime sahiptir. Raji boş zamanlarında yürüyüş yapmaktan, yoga yapmaktan ve bahçe işleriyle uğraşmaktan hoşlanıyor.
Srikanth Baheti Amazon QuickSight için Uzmanlaşmış bir Dünya Çapında Kıdemli Çözüm Mimarıdır. Kariyerine danışman olarak başladı ve birçok özel ve devlet kuruluşunda çalıştı. Daha sonra, AWS hizmetlerini ve Sunucusuz bilgi işlemi kullanan raporlama platformları için yüksek trafikli web uygulamaları, yüksek düzeyde ölçeklenebilir ve bakımı yapılabilir veri boru hatları tasarlamaktan ve geliştirmekten sorumlu olduğu PerkinElmer Sağlık ve Bilimler ve eResearch Technology Inc'de çalıştı.
Kareem Syed-Muhammed Amazon QuickSight'ta Ürün Müdürüdür. Gömülü analitik, API'ler ve geliştirici deneyimine odaklanır. QuickSight'tan önce AWS Marketplace ve Amazon perakende sektöründe PM olarak görev yapmıştır. Kareem kariyerine geliştirici olarak başladı ve ardından çağrı merkezi teknolojileri, Yerel Uzman ve Expedia için Reklamlar için PM olarak başladı. Kısa bir süre McKinsey and Company'de danışman olarak çalıştı.
- '
- "
- &
- 000
- 100
- 11
- erişim
- Hesap
- Action
- İlanlarım
- Türkiye
- Amazon
- analytics
- api
- API'ler
- uygulamayı yükleyeceğiz
- Uygulama
- uygulamaları
- uygulamalar
- Yazarlar
- AWS
- inşa etmek
- iş
- iş zekası
- çağrı
- Kapasite
- Kariyer
- kod
- Sütun
- Şirketler
- şirket
- bilgisayar
- danışman
- Müşteriler
- gösterge paneli
- veri
- veri yönetimi
- Geliştirici
- geliştiriciler
- şehir merkezinde
- çalışanların
- kuruluş
- deneyim
- HIZLI
- Özellikler(Hazırlık aşamasında)
- Hükümet
- Sağlık
- sağlık
- okuyun
- Yüksek
- yürüyüş
- Hastane
- Hastanelerinden olan İstanbul Cerrahi Hastanesi'nde
- Ne kadar
- HTTPS
- IAM
- Kimlik
- Dahil olmak üzere
- bilgi
- Altyapı
- İstihbarat
- interaktif
- IT
- anahtar
- anahtarlar
- seviye
- yerel
- Yapımı
- yönetim
- pazar
- çarşı
- Maç
- ay
- yeni özellik
- Kuzey
- Operasyon
- seçenek
- Diğer
- performans
- hekim
- Platformlar
- politika
- güç kelimesini seçerim
- özel
- PLATFORM
- üretim
- kaynak
- Kaynaklar
- yanıt
- perakende
- gelir
- Rulo
- kurallar
- SaaS
- ölçekleme
- BİLİMLERİ
- güvenlik
- Gördükleri
- seçilmiş
- Serverless
- Hizmetler
- set
- ayar
- paylaş
- Paylaşılan
- kısa
- Yer
- So
- Software
- Çözümler
- güney
- uzay
- başladı
- Açıklama
- Durum
- Teknolojileri
- Teknoloji
- zaman
- üst
- trafik
- Güncellemeler
- kullanıcılar
- değer
- ağ
- Web Uygulamaları
- Batısında
- DSÖ
- içinde
- iş akışı
- çalışır
- Dünya
- yıl
- Yoga