All Projects → Azure → active-directory-dotnet-graphapi-b2bportal-web

Azure / active-directory-dotnet-graphapi-b2bportal-web

Licence: MIT license
Demonstration/prototype of B2B self-service signup, signup approvals, and profile editing.

Programming Languages

javascript
184084 projects - #8 most used programming language
C#
18002 projects
HTML
75241 projects
powershell
5483 projects
CSS
56736 projects

Projects that are alternatives of or similar to active-directory-dotnet-graphapi-b2bportal-web

ms-identity-mobile-apple-swift-objc
An iOS sample in Swift that authenticates Microsoft Account and Azure AD users and calls the Graph API using OAuth 2.0
Stars: ✭ 61 (-4.69%)
Mutual labels:  azure-active-directory, microsoft-graph-api
headstart
A complete and opinionated eCommerce solution using OrderCloud as the backbone - built with .NET Core and Angular
Stars: ✭ 28 (-56.25%)
Mutual labels:  b2b
Aimeos Laravel
Laravel ecommerce package for professional, ultra fast online shops, complex B2B applications and #gigacommerce
Stars: ✭ 5,204 (+8031.25%)
Mutual labels:  b2b
Optimized.Mga
PowerShell module for Microsoft Graph REST API. To optimize, speed, and bulk use Microsoft Graph API in PowerShell. You can can enter your own URL so you aren't restricted to the limitations of the official Microsoft Module. Includes ways to speed up the process, handle throttling, and re-authenticate after the token expires.
Stars: ✭ 29 (-54.69%)
Mutual labels:  microsoft-graph-api
Aimeos
Integrated online shop based on Laravel 8 and the Aimeos e-commerce framework
Stars: ✭ 2,354 (+3578.13%)
Mutual labels:  b2b
Aimeos Core
Aimeos PHP e-commerce framework for ultra fast online shops, complex B2B applications and #gigacommerce
Stars: ✭ 2,152 (+3262.5%)
Mutual labels:  b2b
Holodeck-B2B
Holodeck B2B is an AS4 system-to-system messaging solution that implements the OASIS specifications for ebMS3 and it's AS4 profile. For more information visit the project website
Stars: ✭ 45 (-29.69%)
Mutual labels:  b2b
aspnetcore2aadauth
ASP.NET Core 2.0 Azure AD authentication example
Stars: ✭ 37 (-42.19%)
Mutual labels:  azure-active-directory
ms-rest-nodeauth
node.js based authentication library for Azure with type definitions
Stars: ✭ 31 (-51.56%)
Mutual labels:  azure-active-directory
ms-identity-java-webapi
A Java Web API that calls another web API with the Microsoft identity platform using the On-Behalf-Of flow
Stars: ✭ 27 (-57.81%)
Mutual labels:  azure-active-directory
AzureGraph
R interface to Microsoft Graph REST API
Stars: ✭ 28 (-56.25%)
Mutual labels:  microsoft-graph-api
business-partner-agent
The Business Partner Agent is a SSI wallet and controller based on aries cloud agent python.
Stars: ✭ 52 (-18.75%)
Mutual labels:  b2b
active-directory-android
An android app that uses Azure AD and the ADAL library for authenticating the user and calling a web API using OAuth 2.0 access tokens.
Stars: ✭ 33 (-48.44%)
Mutual labels:  azure-active-directory
active-directory-b2c-javascript-hellojs-singlepageapp
A single page app, implemented with an ASP.NET Web API backend, that signs up & signs in users using Azure AD B2C and calls the web API using OAuth 2.0 access tokens.
Stars: ✭ 63 (-1.56%)
Mutual labels:  azure-active-directory
tod0
A Terminal Client for Microsoft To-Do
Stars: ✭ 93 (+45.31%)
Mutual labels:  microsoft-graph-api
Magento-Quickorder
Magento Quickorder module, enables bulk order creation by inputting SKUs & quantities.
Stars: ✭ 30 (-53.12%)
Mutual labels:  b2b
AzureChamp
A repository for Azure Champ program to train technical experts to get ready for Azure
Stars: ✭ 16 (-75%)
Mutual labels:  azure-active-directory
lemverse
The first-ever coworking metaverse
Stars: ✭ 91 (+42.19%)
Mutual labels:  b2b
QuickTeams
Download, Clone, Archive, Un-Archive your Microsoft Teams and manage the apps you've installed to them
Stars: ✭ 31 (-51.56%)
Mutual labels:  microsoft-graph-api
clearpass-cloud-service-whitelists
Whitelist entries for cloud identity services
Stars: ✭ 21 (-67.19%)
Mutual labels:  azure-active-directory

Azure Active Directory/ASP.Net MVC/GraphAPI B2BPortal

Sample/Prototype project enabling self-service B2B capabilities for an Azure AD Tenant

This code is a sample to demonstrate the Azure Active Directory B2B Invitation API. It was last updated in 2017.

If you wish to enable users from other organizations to request access, and upon approval be provisioned with guest accounts and assigned to groups, apps and SharePoint Online sites, then instead use Azure AD entitlement management to configure policies that manage access for external users.

Quick Start

Detailed step-by-step deployment instructions

Update (Notes here will be reflective of any changes made in the most recent update.)

An additional permission is required to facilitate batch processing with automatic directory addition.

  • DELEGATED PERMISSIONS
    • Access the directory as the signed-in user

This permission will allow a guest user, that has been added to the "Guest Inviter" role, to invite additional guests from their home directory. Those guests are automatically added as new guests without needing to go through an invitation redemption process. They will have immediate, automatic access. The list of groups that can be assigned to these guests are limited to groups where the inviting guest is already a member.

After adding this permission, because user's previous consents will be invalidated, you will need to click "Grant Permissions" to update the consents for users in the tenant.

alt text

Details

  • Allows self-service provisioning of guest accounts in a tenant. Portal enables this via API calls to the Microsoft Graph
  • Leverages Azure CosmosDB. For development, a downloadable emulator is available: https://aka.ms/documentdb-emulator
  • ARM template deploys the following:
    • Azure Web App
    • Azure CosmosDB
  • Requires the following (see step-by-step deployment instructions above for details):
    1. Azure AD application with the following:
    • Microsoft Graph - app permissions
      • Read and write directory data
      • Read and write all users' full profiles
    • Microsoft Graph - delegated permissions
      • Sign in and read user profile
    1. Azure AD application with the following:
    • Microsoft Graph - delegated permissions
      • Sign in and read user profile
      • Multi-Tenant enabled
    • Optional - custom DNS name and SSL cert

Operation

  • Guests access the home page and may enter their login email to request access to the host tenant/company. Optionally, they may click to "Require Sign-In" - this will allow them to login to the guest's home tenant, authenticate, then return with the form pre-filled AND with the request authenticated and validated.
  • Once the request is submitted, the request will be queued in a CosmosDB repo.
  • A user in the home company with the "Guest Inviter" role granted can then access the portal, log in, and browse the pending requests, either approving, denying, or leaving in a pending state for others to review. Additionally, internal comments can be attached to the request records.
  • Optionally, authorized users may login and add a "Partner Organization" profile record. This will allow potential guests with a matching domain suffix, to be optionally auto-approved for B2B guest access in the tenant.
  • Whether a user is automatically approved, or manually approved, once an approval occurs, a welcome email is generated to the requester with a link that allows for redemption of the request.

As-Is Code

This code is made available as a sample to demonstrate usage of the Azure Active Directory B2B Invitation API. It should be customized by your dev team or a partner, and should be reviewed before being deployed in a production scenario.

Contributing

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].