Aracılığıyla paylaş


Şirket içi SQL Server Analysis Services'e (SSAS) rapor ekleme

UYGULANANLAR: Uygulama verilerin sahibidir Veriler Kullanıcıya aittir

Bu makalede, veri uygulamasına sahip standart bir Power BI uygulamasına şirket içiAnalysis Services Tablosal Model canlı bağlantısıyla Power BI içeriğini ekleme açıklanmaktadır. Bu makale, RLS uygulayıp uygulamadıklarına bakılmaksızın tüm canlı bağlantı SSAS modelleri için geçerlidir.

Bu senaryoda veritabanı SSAS (şirket içi) modelindedir ve Power BI altyapısı buna bir ağ geçidi üzerinden bağlanır. Güvenlik rolleri (RLS) ve varsa izinler Power BI Desktop'ta değil SSAS modelinde tanımlanır.

Bu makale kime yöneliktir?

Bu makale çoğunlukla şirket içi (SSAS) veritabanı kurulumuna (RLS ile veya RLS olmadan) sahip olan ve doğrudan oradan içerik eklemek isteyen ISV'ler için geçerlidir.

ISV kurulumu

Şirket içi satır düzeyi güvenlik yalnızca canlı bağlantıyla kullanılabilir, ancak RLS uygulamasına bakılmaksızın herhangi bir veritabanına canlı bağlantı oluşturabilirsiniz. Buna aşağıdakiler dahildir:

  • RLS rolleri ayarsız veritabanları
  • Bir veya daha fazla rollere ait üyelere sahip veritabanları
  • Statik veya dinamik güvenlik rollerine sahip veritabanları

SSAS modelinden rapor eklemek için aşağıdaki eylemleri yapmanız gerekir:

  1. Ağ geçidini ayarlama
  2. Canlı bağlantı oluşturma
  3. Ekleme belirteci oluşturma

Ağ geçidini ayarlama

SSAS ağ geçidine veri kaynağı bağlantısı ekleme

Veri kaynağı adını, veri kaynağı türünü, Sunucu, veritabanı, active directory'nin tanıdığı kullanıcı adı ve parolayı girin.

Ağ geçidi oluşturma ve yönetme hakkında daha fazla bilgi için bkz. Ağ geçidi veri kaynağı ekleme veya kaldırma.

Ağ geçidinde hizmet sorumlusu veya ana kullanıcı izinleri verme

Ekleme belirtecini oluşturan kullanıcının da aşağıdaki izinlerden birine ihtiyacı vardır:

  • Ağ geçidi yöneticisi izinleri

  • Veri kaynağı kimliğe bürünme izni (ReadOverrideEffectiveIdentity)

    Kimliğe bürünme (geçersiz kılma) izni olan kullanıcıların adının yanında bir anahtar simgesi bulunur.

    Screenshot of a gateway member with a key icon next to their name.

Ana kullanıcınıza, hizmet sorumlunuza veya hizmet sorumlusu profilinize ağ geçidi izinleri vermek için bu yönergeleri izleyin.

Kullanıcı adlarını eşleme

Şirket içi dizindeki ve Microsoft Entra dizinindeki kullanıcı adları farklıysa ve verileri portalda görüntülemek istiyorsanız, Microsoft Entra Id'deki her kullanıcıyı veya rolü şirket içi veritabanındaki kullanıcılarla eşleyen bir kullanıcı eşleme tablosu oluşturmanız gerekir. Kullanıcı adlarını eşleme yönergeleri için El ile kullanıcı adı yeniden eşleme bölümüne gidin

Daha fazla bilgi için bkz . Analysis Services veri kaynakları için kullanıcı adlarını eşleme.

Canlı bağlantı oluşturma

Ortam ayarlandıktan sonra Power BI Desktop ile SQL sunucusu arasında canlı bağlantı oluşturun ve raporunuzu oluşturun.

  1. Power BI Desktop'ı başlatın ve Veri>veritabanı al'ı seçin.

  2. Veri kaynakları listesinden SQL Server Analysis Services Veritabanı'nı ve Bağlan seçin.

    Connect to SQL Server Analysis Services Database.

  3. Analysis Services tablosal örnek ayrıntılarınızı doldurun ve canlı Bağlan seçin. Ardından Tamam'ı seçin.

    Screenshot of Analysis Services details.

Ekleme belirteci oluşturma

Raporunuzu müşterileriniz için ekleme senaryosuna eklemek için etkin kimliği Power BI'a geçiren bir ekleme belirteci oluşturun. AS altyapılarına yapılan tüm canlı bağlantılar, RLS uygulanmamış olsa bile etkili bir kimliğe ihtiyaç duyar.

RLS ayarlı değilse, etkin kimlik olarak Yönetici kullanmak istediğiniz için veritabanına yalnızca Yönetici erişebilirsiniz.

Ekleme belirteci oluşturmak için gereken bilgiler, hizmet sorumlusu veya ana kullanıcı olarak Power BI'a bağlı olup olmadığınız ve ayrıca veritabanında RLS olup olmadığınız bağlıdır.

Ekleme belirtecini oluşturmak için aşağıdaki bilgileri sağlayın:

  • Kullanıcı adı (RLS yoksa isteğe bağlı. RLS için gerekli) - Etkin kimlik olarak kullanılacak SSAS tarafından tanınan geçerli bir kullanıcı adı. Veritabanı RLS kullanmıyorsa ve kullanıcı adı sağlanmadıysa, ana kullanıcının kimlik bilgileri kullanılır.
  • Rol (RLS için gereklidir) - Rapor yalnızca etkin kimlik rolün üyesiyse verileri görüntüler.

Örneğin:

public EmbedToken GetEmbedToken(Guid reportId, IList<Guid> datasetIds, [Optional] Guid targetWorkspaceId)
{
    PowerBIClient pbiClient = this.GetPowerBIClient();

    // Define the user identity and roles. Use one of the following:

    var rlsidentity = new EffectiveIdentity(  //If no RLS
       username: "Domain\\Username", // can also be username@contoso.com
       datasets: new List<string>{ datasetId.ToString()}
    )

    var rlsidentity = new EffectiveIdentity(  // If RLS
       username: "username@contoso.com",
       roles: new List<string>{ "MyRole" },
       datasets: new List<string>{ datasetId.ToString()}
    )
    
    // Create a request for getting an embed token for the rls identity defined above
    var tokenRequest = new GenerateTokenRequestV2(
        reports: new List<GenerateTokenRequestV2Report>() { new GenerateTokenRequestV2Report(reportId) },
        datasets: datasetIds.Select(datasetId => new GenerateTokenRequestV2Dataset(datasetId.ToString())).ToList(),
        targetWorkspaces: targetWorkspaceId != Guid.Empty ? new List<GenerateTokenRequestV2TargetWorkspace>() { new GenerateTokenRequestV2TargetWorkspace(targetWorkspaceId) } : null,
        identities: new List<EffectiveIdentity> { rlsIdentity }
    );

    // Generate an embed token
    var embedToken = pbiClient.EmbedToken.GenerateToken(tokenRequest);

    return embedToken;
}

Artık raporunuzu uygulamanıza ekleyebilirsiniz ve raporunuz verileri rapora erişen kullanıcının izinlerine göre filtreler.

Dikkat edilecekler ve sınırlamalar

CustomData desteklenmez.

Ekleme belirteci oluşturma