Skip to content
This repository has been archived by the owner on Jul 22, 2023. It is now read-only.

🛡 A proxy for simplifying the creation of a permission layer for the Microsoft Graph API.

License

Notifications You must be signed in to change notification settings

thomas-illiet/msgraph-shield

Repository files navigation

MSGraph-Shield Solution

.NET Core

Microsoft Graph Proxy Server authorizations: another layer of abstraction!

Overview

MSGraph Shield empowers you to establish a robust permission layer for your company. With its intuitive rule configuration, you'll harness the full power of the shield engine with every request. This ensures both the agility of your company and the protection of internal data.

Features

  • ✂️ Flexible: Base on Micro Rule Engine
  • 🤝 Compatible: Works with all Microsoft Graph API Servers.
  • 🎯 Per-Type or Per-Field: Write permissions for your schema, types or specific fields (check the example below).

EF Core & Data Access

The solution uses these DbContexts:

  • DataConfigDbContext: for product configuration store
  • DataProtectionDbContext: for dataprotection

Run entity framework migrations:

NOTE: Initial migrations are a part of the repository.

  • It is possible to use powershell script in folder build/add-migrations.ps1.

  • This script take two arguments:

    • --migration (migration name)
    • --migrationProviderName (provider type - available choices: All, SqlServer, MySql, PostgreSQL)
  • For example: .\add-migrations.ps1 -migration DbInit -migrationProviderName SqlServer

Available database providers:

  • SqlServer
  • MySql
  • PostgreSQL

It is possible to switch the database provider via appsettings.json:

"DatabaseProviderConfiguration": {
    "ProviderType": "SqlServer" 
}

Connection strings samples for available db providers

PostgreSQL:

Server=localhost;Port=5432;Database=IdentityServer4Admin;User Id=sa;Password=#;

MySql:

server=localhost;database=IdentityServer4Admin;user=root;password=#

Contributing

We are always looking for people to help us grow msgraphql-shield! If you have an issue, feature request, or pull request, let us know!

License

MIT @ Thomas ILLIET

About

🛡 A proxy for simplifying the creation of a permission layer for the Microsoft Graph API.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published