Coder Social home page Coder Social logo

powerbi-data-access-auditing's People

Contributors

jrampono avatar microsoftopensource avatar rivms avatar sergiozenatti avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

powerbi-data-access-auditing's Issues

Refresh data is not triggered

Clicking Refresh Data via the web app does not result in the report data being loaded.

Observation

The message to refresh data is being placed into the "app-trigger-queue" queue but the PowerBiDataSetProcessor_QueueStart function is triggered on a queue named "app-trigger-data-refresh"

Add Ability to control pagination & limit rows of data returned

We need the ability to control the size of the audit payload and the amount of data displayed at anyone point in time. Therefore, we need to implement the ability to "throttle" individual data requests. Suggested is to scan each data request and modify it to ensure that the number of records selected is below a configurable limit.

Auto Population of Audit application's "reports" configuration datastore

  • Create and implement automated process to analyze the new data coming from #4 and auto populate / update the configuration datastore for the auditing web application
  • Content to be part of the Auditing application is to be identified based on workspace & report naming conventions
  • Check that no "auditable" reports have been given access in power bi service (only the Audit app service principal should be given access)

Add Report Level Security Model

The application needs to be upgraded to support a security model with the following features:

  • Must allow for various AAD groups to be granted or denied access to each report
  • This should be added to the model contained in the structure of the "reports" section of the appsettings.json
  • Security model should map users to an "effectiveuser". Effectiveuser will be passed through to PowerBi and used in Row Level Security.

Current "Report" model in appsettings.json:

"Reports": [{
                "UniqueId": 1,
                "DisplayLevel": 1,
                "DisplayName": "Offenders Report",
                "WorkspaceId": "{SampleWorkSpaceId}",
                "Description": "This is the offender report",
                "ReportId": "{SampleReportId1}",
                "DrillThroughReports": [2],
                "RequiredParameters": [],
                "PaginationTable": "",
                "PaginationColumn": ""
            },
            {
                "UniqueId": 2,
                "DisplayLevel": 2,
                "DisplayName": "Offender PII Report",
                "WorkspaceId": "{SampleWorkSpaceId}",
                "ReportId": "{SampleReportId2}",
                "Description": "This is the offender PII report",
                "DrillThroughReports": [],
                "RequiredParameters": ["OffenderId"]
            },
            {
                "UniqueId": 3,
                "DisplayLevel": 1,
                "DisplayName": "Offenders Report 2",
                "WorkspaceId": "{SampleWorkSpaceId}",
                "Description": "This is the offender report",
                "ReportId": "{SampleReportId1}",
                "DrillThroughReports": [2],
                "PaginationTable": "",
                "PaginationColumn": ""
            },
            {
                "UniqueId": 3,
                "DisplayLevel": 1,
                "DisplayName": "Offenders Report 3",
                "WorkspaceId": "{SampleWorkSpaceId}",
                "Description": "This is the offender report",
                "ReportId": "{SampleReportId1}",
                "DrillThroughReports": [2],
                "PaginationTable": "",
                "PaginationColumn": ""
            }
        ]

Add Azure Function to allow post capture processing of JSON audit files

  • Must be decoupled from audit capture process
  • Must at a minimum decompress data sets and "flatten" multidimensional results into a tabular form
  • Support for max of 5 data request types at this stage
  • Must be built to scale out and handle large number of audit files
  • Must provide email alert on failure

Add Power Bi Metadata and Telemetry Capture Function

Download of Power Bi metadata & telemetry from the Power BI Admin API to Azure Storage:

  • Must provide list of all power bi reports in tenant
  • Must provide list of all power bi datasets in tenant
  • Must provide list of all power bi workspaces in tenant
  • Must provide list of all power bi dashboards in tenant
  • Must provide list of all power bi dataflows in tenant
  • Must allow for incremental & full load
  • Must provide history of all usage activity available from the power bi admin api (eg Report Views etc) .

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.