Book Image

Instant SQL Server Analysis Services 2012 Cube Security

By : Satya Shyam K Jayanty
Book Image

Instant SQL Server Analysis Services 2012 Cube Security

By: Satya Shyam K Jayanty

Overview of this book

SQL Server 2012 includes BI-specific features such as cube analytics, reporting-related features, multidimensional BI semantic models, and many more. This is a new addition that is of great use to Business Analysts, who can now build BI semantic models using the relational tables from the database engine rather than the dimensions from analysis services. Instant Microsoft SQL Server Analysis Services 2012 Cube Security is a practical, hands-on guide that provides clear, step-by-step recipes for getting started with cube security. As a Database Administrator and Data Architect, data security is of prime concern, and this book highlights the key concepts of securing cubes. By the end of this book, you will understand the SQL Server security model and how to effectively implement the same on the data platform. Security is paramount within a data platform, and thankfully, the issues surrounding data access can be fixed in the initial stages of its design. This allows you to avoid any breach of data access layers. The recipes in this book consist of the required ingredients to implement and administer OLAP & BI security management for your cubes. With this book, you will master the key aspects of implementing and managing security essentials and securing data layers. The recipes in this book incorporate best practice implementation, which include step-by-step instructions for creating models that implement security based on the currently logged on Windows user name or based on custom data passed to analysis services. The new BI platform features will help end users, business users, and technology users by providing a robust environment for IT, planning, budgeting, forecasting with scorecards, and reporting capabilities for the business users. These analytics will help end users to create a comprehensive management application to view the data with ease.
Table of Contents (7 chapters)

Data source and access control on cubes (Advanced)


The source is the key for any data, irrespective of cube or database. In this book the remaining areas within cube security are data sources and cube access. In this recipe we will go through the key aspects on how access control can affect the data sources and dimension data that are included in the cube.

Within the Analysis Services, data marts have multiple data sources and these types are not treated in the same way. When the cube is processed for query purposes, the key content of a right data type will help the results to return faster.

Cube processing also involves dimensions that will accept queries to the relational database in order to retrieve key information based on the queries. Keep in mind that not all the queries are simple SELECT queries or get a single dataset. There are multiple nested-complex queries. So, the data sources are always an important layer in the cube to set up the right level of data flow.

Here the permission is a key ingredient to access the data source, and it depends on the type of data that is being used and the security setup. As we have reiterated in the previous recipes, Analysis Services only uses Windows authentication to connect; it is one of the best ways to secure the data when OLAP is involved.

The account permissions for the SSAS service account will have the necessary access control on tables and views (virtual tables) with sufficient levels of read permissions. As we have worked out from the previous recipes, impersonal information is important to set up the right level of data access.

In this recipe we will look at the important steps used in order to secure a data source and right level of access on cubes.

Note

The prerequisite for this recipe can be obtained from the Getting ready section of the Designing and creating security roles in an OLAP database recipe.

How to do it...

Perform the following steps:

  1. Start SQL Server Management Studio and connect to the SQL Server 2012 Analysis Services (SSAS) instance.

  2. Expand the Databases folder.

  3. Choose the AdventureWorksDM database (created in the Getting ready section previously mentioned) and expand the Roles folder.

    Note

    If you are reading this recipe directly without the previous recipes, you can create the necessary roles as per the Creating security roles (Intermediate) recipe.

  4. Right-click on the role (here I have selected the DBIA_Processor role, and later the DBIA_User role) to choose Role Properties.

  5. Select Data Sources from the Select a page pane that will show the Adventure Works DW2012 information.

  6. Click on the drop-down option on the Access column and select Read to enable the read access to the data source. Click on OK to bring about the new changes:

Note

For the DBIA_User role I would like to leave the default setting for Access as None under the Data Sources option.

We have completed the recipe steps for the data source now we will work out the cubes access steps. Start the process from step 4 from the previous steps:

  1. Right-click on the role (here I have selected the DBIA_Processor role, and later the DBIA_User role) to choose Role Properties.

  2. Select Cubes from the Select a page pane that will show the cube-related permissions for this role on the Adventure Works DW2012 cube.

  3. Select the Read/Write option from the Access column's drop-down list and the Drillthrough and Local Cube option under the Local Cube/Drillthrough Access column:

  4. Click on OK to bring about the changes on the Cubes option, on the Role Properties page.

Note

In the case of the DBIA_User role, I chose to apply Read for the Access column and Drillthrough for the option under the Local Cube/Drillthrough Access column.

How it works...

The steps carried out in this recipe take effect immediately without having to restart any services on the Analysis Services instance.

The data source name is applied from the database name, though we have an opportunity to change the name, which is not important at this point. On the screen, you will see the options to select the access level for the selected data source in this role.

The two options None and Read are self-explanatory. Using None will assure that users will be unable to access information from the data source. The Read option will enable users to read the information from that data source. The Read Definition option will help us to grant users to those who are in this role permission, for them to read metadata of the data source.

Now coming to the cubes permission, as we have seen the user must have the Full Control access for the specified SSAS instance, for any changes to take place for the role. The Access column will select the access level for the selected cube in this role.

The available options for this Access column levels are as follows:

  • None: This will disallow any users from accessing the information from the cube

  • Read: This will allow users to read the information

  • Read/Write: This will allow users to read and write information to the cube

The Local Cube/Drillthrough Access column will enable the role to select the access level for the local cube or drillthrough functionality with the selected cube in this role.

The three options for this column are:

  • None: This will disallow any access to the information from the cube

  • Drillthrough: With this you will be able to use drillthrough functionality, but unable to create local cubes from the cube

  • Drillthrough and Local Cube: We can use this to apply the complete drillthrough functionality and create local cubes from the cube

Finally, the Process column will grant users who are in this role the permission to process the selected cube.

Note

However, the Process option is selected but not available if the Process database option is selected on the General page of Role Designer.