J'ai une application Asp.NET MVC connectée à Azure AD B2C.Azure AD B2C - Gestion des rôles
Dans les paramètres d'administrateur, j'ai créé un groupe Administrateurs:
Dans mon code, je voudrais utiliser [Authorize(Roles = "Administrator")]
Avec Azure régulière Active Directory, il est facile d'ajouter (juste 3 lignes de code). Mais pour l'Azure AD B2C je ne trouve aucun tutoriel ou exemple sur le web qui fonctionne. Peut-être que vous pouvez me dire ce que j'ai besoin de modifier.
Voici la méthode ConfigureAuth de mes Startup.Auth.cs
public void ConfigureAuth(IAppBuilder app)
{
app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
app.UseCookieAuthentication(new CookieAuthenticationOptions());
app.UseOpenIdConnectAuthentication(
new OpenIdConnectAuthenticationOptions
{
// Generate the metadata address using the tenant and policy information
MetadataAddress = String.Format(AadInstance, Tenant, DefaultPolicy),
// These are standard OpenID Connect parameters, with values pulled from web.config
ClientId = ClientId,
RedirectUri = RedirectUri,
PostLogoutRedirectUri = RedirectUri,
// Specify the callbacks for each type of notifications
Notifications = new OpenIdConnectAuthenticationNotifications
{
RedirectToIdentityProvider = OnRedirectToIdentityProvider,
AuthorizationCodeReceived = OnAuthorizationCodeReceived,
AuthenticationFailed = OnAuthenticationFailed,
},
// Specify the claims to validate
TokenValidationParameters = new TokenValidationParameters
{
NameClaimType = "name"
},
// Specify the scope by appending all of the scopes requested into one string (separated by a blank space)
Scope = $"openid profile offline_access {ReadTasksScope} {WriteTasksScope}"
}
);
}
Premier grand merci pour votre réponse! Je n'ai plus que 2 questions à ce sujet. Où dois-je ajouter cette URL (étape 4) et qu'est-ce que l'URL de redirection (est-ce la réponse uri de la b2c?)? Une autre question au Code: Que pourrais-je remplir les variables suivantes: - GraphClientId - GraphRedirectUri - GraphClientSecret - userTokenCache Et VisualStudio appelle un message d'erreur à: nouveau c.Réclamer Un grand merci pour votre aide :-) – DarkWing89
A fait des mises à jour pour clarifier les instructions d'inscription de l'application et répondre aux questions de c.Claim. – Saca
GraphClientID = ID d'application de l'application que vous avez enregistrée, GraphSecret = le secret d'application, GraphRedirectUri = l'URI de redirection que vous avez spécifiée, userTokenCache doit déjà être défini à partir du code qui est déjà dans ce OnAuthorizationCodeReceived de l'exemple. – Saca