Skip to content

Instantly share code, notes, and snippets.

View rbrayb's full-sized avatar

rbrayb rbrayb

View GitHub Profile
@rbrayb
rbrayb / Program.cs
Created August 15, 2019 00:05
Using Proof Key for Code Exchange (PKCE) in ADFS for Windows Server 2019
using IdentityModel;
using System;
using System.Security.Cryptography;
using System.Text;
namespace ADFS_PKCE_Core
{
class Program
{
@rbrayb
rbrayb / MedSignUpOrSignin.xml
Created October 24, 2019 20:42
Putting together a user journey in Azure AD B2C
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0" TenantId="tenant.onmicrosoft.com" PolicyId="B2C_1A_medsignup_signin" PublicPolicyUri="http://tenant.onmicrosoft.com/B2C_1A_medsignup_signin" DeploymentMode="Development" UserJourneyRecorderEndpoint="urn:journeyrecorder:applicationinsights">
<BasePolicy>
<TenantId>tenant.onmicrosoft.com</TenantId>
<PolicyId>B2C_1A_MedTrustFrameworkExtensions</PolicyId>
</BasePolicy>
@rbrayb
rbrayb / SignUpOrSigninSAML.xml
Last active November 4, 2019 20:40
Using Azure AD B2C as a SAML IDP with the SP Initiated flow
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TrustFrameworkPolicy
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0"
TenantId="tenant.onmicrosoft.com"
PolicyId="B2C_1A_SAML2_signup_signin_SAML"
PublicPolicyUri="http://tenant.onmicrosoft.com/B2C_1A_SAML2_signup_signin_SAML">
<BasePolicy>
<TenantId>tenant.onmicrosoft.com</TenantId>
<PolicyId>B2C_1A_TrustFrameworkExtensionsSAML</PolicyId>
@rbrayb
rbrayb / SignUpOrSignInSAML-IdP-Initiated.xml
Created November 5, 2019 01:20
Using Azure AD B2C as a SAML IDP with the IDP Initiated flow
<?xml version="1.0" encoding="utf-8" ?>
<TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0" TenantId="tenant.onmicrosoft.com" PolicyId="B2C_1A_SAML_IdP_Initiated" PublicPolicyUri="http://tenant.onmicrosoft.com/B2C_1A_SAML_IdP_Initiated">
<BasePolicy>
<TenantId>tenant.onmicrosoft.com</TenantId>
<PolicyId>B2C_1A_TrustFrameworkExtensionsSAML</PolicyId>
</BasePolicy>
<BuildingBlocks>
@rbrayb
rbrayb / ADProfileService.cs
Last active November 22, 2022 09:52
Using Active Directory (AD) as the repository for authentication with identityserver4
using IdentityModel;
using IdentityServer4.Extensions;
using IdentityServer4.Models;
using IdentityServer4.Services;
using System.Collections.Generic;
using System.DirectoryServices;
using System.DirectoryServices.AccountManagement;
using System.Linq;
using System.Security.Claims;
using System.Threading.Tasks;
@rbrayb
rbrayb / Privacy.cshtml
Last active October 20, 2021 18:11
Authenticating to Active Directory Federation Services (ADFS) 2019 with .NET Core 3.1
@using Microsoft.AspNetCore.Authentication
@{
ViewData["Title"] = "Claims";
}
<h1>@ViewData["Title"]</h1>
<dl>
@foreach (var claim in User.Claims)
{
@rbrayb
rbrayb / B2C-SAML - Medium.xml
Created November 11, 2020 00:16
Using Azure AD B2C as an IDP with the SAMLTest application
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TrustFrameworkPolicy
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0"
TenantId="yourtenant.onmicrosoft.com"
PolicyId="B2C_1A_SAML2_signup_signin"
PublicPolicyUri="http://yourtenant.onmicrosoft.com/B2C_1A_SAML2_signup_signin">
<BasePolicy>
<TenantId>yourtenant.onmicrosoft.com</TenantId>
<PolicyId>B2C_1A_TrustFrameworkExtensionsSAMLTest</PolicyId>
@rbrayb
rbrayb / B2C-SAML-CS.xml
Created November 12, 2020 21:20
Connecting the ComponentSpace SAML 2.0 stack to Azure AD B2C
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TrustFrameworkPolicy
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0"
TenantId="tenant.onmicrosoft.com"
PolicyId="B2C_1A_SAML2_CS_signup_signin"
PublicPolicyUri="http://tenant.onmicrosoft.com/B2C_1A_SAML2_CS_signup_signin">
<BasePolicy>
<TenantId>tenant.onmicrosoft.com</TenantId>
<PolicyId>B2C_1A_TrustFrameworkExtensions</PolicyId>
@rbrayb
rbrayb / B2C_1A_Username_SUSI.xml
Created April 27, 2021 01:51
Implementing security questions and answers on Azure AD B2C
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06"
PolicySchemaVersion="0.3.0.0"
TenantId="tenant.onmicrosoft.com"
PolicyId="B2C_1A_Username_SUSI"
PublicPolicyUri="http://tenant.onmicrosoft.com/B2C_1A_Username_SUSI">
<BasePolicy>
@rbrayb
rbrayb / B2C_1A_TrustFrameworkExtensions_Func_Auth.xml
Created June 14, 2021 02:29
Using a different Identity repository for Azure AD B2C
<TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0" TenantId="tenant.onmicrosoft.com" PolicyId="B2C_1A_TrustFrameworkExtensions_Func_Auth" PublicPolicyUri="http://tenant.onmicrosoft.com/B2C_1A_TrustFrameworkExtensions_Func_Auth" TenantObjectId="65f...b2316">
<BasePolicy>
<TenantId>tenant.onmicrosoft.com</TenantId>
<PolicyId>B2C_1A_TrustFrameworkBase_Func</PolicyId>
</BasePolicy>
<BuildingBlocks>
<ClaimsSchema>
<ClaimType Id="role">
<DataType>string</DataType>