Zephyrnet Logosu

Okta ile Amazon Redshift rol tabanlı erişim denetiminde IAM tabanlı tek oturum açmayı birleştirin | Amazon Web Hizmetleri

Tarih:

Amazon Kırmızıya Kaydırma geniş ölçekte hızlı, kolay ve güvenli bulut veri ambarı ile öngörülere ulaşma sürenizi kısaltır. On binlerce müşteri, eksabaytlarca veriyi analiz etmek ve karmaşık analitik sorgular yürütmek için Amazon Redshift'e güveniyor.

Verilerinizi bir ortamda analiz etmek için tercih ettiğiniz SQL istemcilerini kullanabilirsiniz. Amazon Kırmızıya Kaydırma Veri deposu. Mevcut kullanıcı kimlik bilgilerini yeniden kullanmak ve ek kullanıcı kurulumu ve yapılandırmasından kaçınmak amacıyla Redshift veri ambarına bağlanmak için bir kimlik sağlayıcı (IdP) veya tek oturum açma (SSO) kimlik bilgilerinden yararlanarak sorunsuz bir şekilde bağlanın. Kullanma rol tabanlı erişim denetimi (RBAC)Amazon Redshift'te kullanıcı ayrıcalıklarının, veritabanı izinlerinin ve güvenlik izinlerinin yönetimini basitleştirebilirsiniz. Redshift veritabanı rollerini, sistem monitörü veya veritabanı yöneticisi gibi bir dizi yükseltilmiş izin tanımlamak için de kullanabilirsiniz.

kullanma AWS Kimlik ve Erişim Yönetimi (IAM) RBAC ile kuruluşlar, kullanıcı yönetimini basitleştirebilir çünkü artık kullanıcıları manuel olarak oluşturmanıza ve bunları veritabanı rollerine eşlemenize gerek yoktur. Eşlenen veritabanı rollerini, IdP grupları veya IAM rolü için ana etiket olarak tanımlayabilirsiniz; böylece Redshift veritabanı rolleri ve bu IdP gruplarının üyesi olan kullanıcılara, veritabanı rolleri otomatik olarak verilir.

2023'ün başlarında, Okta entegrasyonu için destek başlatıldı ile Amazon Redshift Sunucusuz veritabanı rollerini kullanma. Bu yazıda, IdP olarak Okta'ya odaklanıyoruz ve Redshift tarafından sağlanan bir kümeyi, Redshift Query Editor v2'yi kullanarak ve SQL Workbench/J gibi SQL istemcileriyle Okta ile entegre etmek için adım adım rehberlik sağlıyoruz. Bu mekanizmayı Azure Active Directory veya Ping gibi diğer IdP sağlayıcılarıyla, Amazon'un JDBC, ODBC veya Python sürücüsünü kullanan herhangi bir uygulama veya araçla kullanabilirsiniz.

Geçtiğimiz günlerde biz de duyurduk Amazon Kırmızıya Kaydırma AWS IAM Identity Center ile entegrasyon, destekleyici güvenilir kimlik yayılımı, kullanmanıza izin veren üçüncü taraf Kimlik Sağlayıcıları (IdP) Microsoft Entra ID (Azure AD), Okta, Ping ve OneLogin gibi. Bu entegrasyon, Amazon Redshift kullanıcıları için kimlik doğrulama ve yetkilendirme sürecini basitleştirir. Sorgu Düzenleyici V2 or Amazon Hızlı Görüşveri ambarınıza güvenli bir şekilde erişmelerini kolaylaştırır. AWS IAM Identity Center, System for Cross-domain Identity Management (SCIM) 2.0 protokolünü kullanarak Okta'dan kendisine otomatik kullanıcı ve grup yetkilendirmesi sunar. Bu entegrasyon, iki hizmet arasında kesintisiz bilgi senkronizasyonuna olanak tanıyarak AWS IAM Identity Center'da doğru ve güncel bilgiler sağlar. Bakınız Sorunsuz Tek Oturum Açma için AWS IAM Identity Center'ı kullanarak Okta'yı Amazon Redshift Query Editor V2 ile entegre edin Kimlik Sağlayıcı olarak IdC ve Okta ile entegrasyonu kullanarak Amazon Redshift'te tek oturum açma (SSO) kurulumu hakkında daha fazla bilgi edinmek için blog gönderisine bakın.

Amazon Redshift veritabanı rolleriyle IAM tabanlı çoklu oturum açmayı kullanmak ilginizi çekiyorsa bu blogu okumaya devam edebilirsiniz.

Çözüme genel bakış

Aşağıdaki şemada, birleştirilmiş IAM rolleri ve otomatik veritabanı rol eşlemesi kullanan Redshift tarafından sağlanan bir küme ile Okta'nın kimlik doğrulama akışı gösterilmektedir.

mimari diyagram

İş akışı aşağıdaki adımları içerir:

  1. Kullanıcı, tarayıcısında bir IdP uygulaması seçer veya SQL istemcisi, IdP'ye (Okta) bir kullanıcı kimlik doğrulama isteği başlatır.
  2. Başarılı bir kimlik doğrulamanın ardından Okta, AWS federasyon uç noktasına ana etiketleri içeren bir SAML onayıyla bir istek gönderir.
  3. AWS federasyon uç noktası, SAML onayını doğrular ve AWS Security Token Hizmeti (AWS STS) API'si AssumeRoleWithSAML. SAML onayı, IdP kullanıcı ve grup bilgilerini içerir. RedshiftDbUser ve RedshiftDbRoles sırasıyla ana etiketler. Geçici IAM kimlik bilgileri SQL istemcisine döndürülür veya Sorgu Düzenleyici v2 kullanılıyorsa kullanıcının tarayıcısı, geçici IAM kimlik bilgileri kullanılarak Sorgu Düzenleyici v2 konsoluna yönlendirilir.
  4. Geçici IAM kimlik bilgileri, SQL istemcisi veya Sorgu Düzenleyicisi v2 tarafından Redshift API'sini çağırmak için kullanılır GetClusterCredentialsWithIAM. Bu API, kullanıcının ait olduğu kullanıcı ve veritabanı rollerini belirlemek için ana etiketleri kullanır. Kullanıcı ilk kez oturum açıyorsa ve eşleşen veritabanı rolleri otomatik olarak kendisine veriliyorsa ilişkili bir veritabanı kullanıcısı oluşturulur. SQL istemcisine geçici bir parola döndürülür.
  5. SQL istemcisi veya Sorgu Düzenleyici v2, veritabanı kullanıcısını ve geçici parolayı kullanarak Amazon Redshift'e bağlanır. Oturum açtıktan sonra kullanıcı, 4. Adımda atanan Redshift veritabanı rollerine göre yetkilendirilir.

Önkoşullar

Bu çözümü kurmak için aşağıdaki önkoşullara ihtiyacınız vardır:

Sorgu Düzenleyicisi v2'yi kullanarak Redshift tarafından sağlanan bir kümeye birleştirilmiş kullanıcı olarak bağlanın

Sorgu Düzenleyicisi v2'yi kullanarak bağlanmak için aşağıdaki adımları tamamlayın:

  1. Bölümlerde açıklanan tüm adımları izleyin Okta uygulamanızı kurun ve AWS yapılandırmasını kurun aşağıda Facebook post.
  2. Amazon Redshift erişim IAM politikası için politikayı aşağıdaki JSON ile değiştirin. GetClusterCredentialsWithIAM API:
    {
    	"Version": "2012-10-17",
    	"Statement": [
    					{
    						"Sid": "VisualEditor0",
    						"Effect": "Allow",
    						"Action": "redshift:GetClusterCredentialsWithIAM",
    						"Resource": "arn:aws:redshift:us-west-2:123456789012:dbname:redshift-cluster-1/dev"
    					}
    				]
    }

Artık Sorgu Düzenleyicisi v2'yi ve birleştirilmiş oturum açmayı kullanarak Redshift tarafından sağlanan kümenize bağlanmaya hazırsınız.

  1. Okta'nın SSO URL'sini kullanın ve kullanıcı kimlik bilgilerinizle Okta hesabınızda oturum açın. Bu demo için Ethan kullanıcısıyla giriş yapıyoruz.
  2. Sorgu Düzenleyicisi v2'de Redshift tarafından sağlanan kümenizi seçin (sağ tıklayın) ve Bağlantı oluştur.
  3. İçin Doğrulamaseçin IAM kimliğinizi kullanan geçici kimlik bilgileri.
  4. İçin veritabanı, bağlanmak istediğiniz veritabanı adını girin.
  5. Klinik Bağlantı oluştur.
  6. Federasyon kullanıcısı olarak oturum açtığınızı doğrulamak ve ayrıca geçerli oturum için o kullanıcıyla ilişkili rollerin listesini almak için aşağıdaki komutu çalıştırın:
SELECT current_user,* FROM pg_get_session_roles() eff_ro(name name, roleid integer);

Çünkü Ethan satış grubunun bir parçası ve satış grubundaki tablolara erişim izni verildi. sales_schema, bu tablolara herhangi bir sorun yaşamadan erişebilmelidir. Ancak tablodaki tablolara erişmeye çalışırsa finance_schemaEthan, Okta'daki finans grubunun bir parçası olmadığı için izin reddedildi hatasıyla karşılaşacaktı.

Okta-QEV2-Federasyon

Üçüncü taraf bir istemci aracılığıyla Redshift tarafından sağlanan bir kümeye federe kullanıcı olarak bağlanın

Üçüncü taraf istemci aracılığıyla birleştirilmiş kullanıcı olarak bağlanmak için aşağıdaki adımları tamamlayın:

  1. Yukarıdaki bölümde açıklanan 1. ve 2. adımları izleyin (Sorgu Düzenleyicisi v2'yi kullanarak birleştirilmiş kullanıcı olarak Redshift tarafından sağlanan bir kümeye bağlanın).
  2. Kullan Redshift JDBC sürücüsü v2.1.0.18 ve üzeri, IAM grup federasyonuyla kimlik doğrulamayı desteklediğinden. URL için şunu girin: jdbc:redshift:iam://<cluster endpoint>:<port>:<databasename>?groupfederation=true. Örneğin, jdbc:redshift:iam://redshift-cluster-1.abdef0abc0ab.us-west-2.redshift.amazonaws.com:5439/dev?groupfederation=true

Önceki URL'de, groupfederation Redshift tarafından sağlanan küme için IAM kimlik bilgileriyle kimlik doğrulamanıza olanak tanıyan zorunlu bir parametredir. olmadan groupfederation parametresi Redshift veritabanı rollerini kullanmayacaktır.

  1. İçin Kullanıcı Adı ve Şifre, Okta kimlik bilgilerinizi girin.

SQL Workbench/J - Bağlantı

  1. Genişletilmiş özellikleri ayarlamak için bölümdeki 4-9 arasındaki adımları izleyin. SQL istemcisini yapılandırın (SQL Workbench/J) aşağıda Facebook post.

Kullanıcı Ethan şuraya erişebilecek: sales_schema tablolar. Ethan tablodaki tablolara erişmeye çalışırsa finance_schema, izin reddedildi hatası alır.

SQL Workbench/J Demosu

Sorun giderme

Bağlantınız çalışmadıysa aşağıdakileri göz önünde bulundurun:

  • Sürücüde oturum açmayı etkinleştirin. Talimatlar için bkz. Günlüğe kaydetmeyi yapılandır.
  • En son kullandığınızdan emin olun Amazon Redshift JDBC sürücüsü sürümü.
  • Uygulamayı Okta'da ayarlarken hata alıyorsanız, yönetici erişiminiz olduğundan emin olun.
  • SQL istemcisi aracılığıyla kimlik doğrulaması yapabiliyorsanız ancak bir izin sorunuyla karşılaşıyorsanız veya nesneleri göremiyorsanız role ilgili izni verin.

Temizlemek

Çözümü test etmeyi bitirdiğinizde, ileride ücret alınmasını önlemek için kaynakları temizleyin:

  1. Redshift tarafından sağlanan kümeyi silin.
  2. IAM rollerini, IAM IdP'lerini ve IAM politikalarını silin.

Sonuç

Bu gönderide, Redshift Query Editor v2 ve SQL Workbench/J'yi kullanarak birleştirilmiş IAM rolleri ve otomatik veritabanı rol eşlemesi yardımıyla Redshift tarafından sağlanan bir kümeyi Okta ile entegre etmeye yönelik adım adım talimatlar sağladık. Benzer bir kurulumu diğer SQL istemcileriyle (DBeaver veya DataGrip gibi) kullanabilirsiniz. Ayrıca rol tabanlı kimlik doğrulamayı sorunsuz bir şekilde kullanmak için Okta grup üyeliğinin Redshift tarafından sağlanan küme rolleriyle otomatik olarak nasıl eşlendiğini gösterdik.

Herhangi bir geri bildiriminiz veya sorunuz varsa, lütfen bunları yorumlarda bırakın.


Yazarlar Hakkında

Debu-Pandaİlk Panda AWS'de Ürün Yönetimi Kıdemli Yöneticisidir. Analitik, uygulama platformu ve veritabanı teknolojilerinde sektör lideridir ve BT dünyasında 25 yılı aşkın deneyime sahiptir.

Ranjan Burman AWS'de Analitik Uzmanı Çözüm Mimarıdır. Amazon Redshift'te uzmandır ve müşterilerin ölçeklenebilir analitik çözümler oluşturmasına yardımcı olur. Farklı veritabanı ve veri ambarı teknolojilerinde 16 yıldan fazla deneyime sahiptir. Müşteri sorunlarını bulut çözümleriyle otomatikleştirme ve çözme konusunda tutkulu.

Maneesh Sharma AWS'de büyük ölçekli veri ambarı ve analitik çözümleri tasarlama ve uygulama konusunda on yılı aşkın deneyime sahip Kıdemli Veritabanı Mühendisidir. Daha iyi entegrasyon sağlamak için çeşitli Amazon Redshift İş Ortakları ve müşterileriyle işbirliği yapıyor.

spot_img

En Son İstihbarat

spot_img