Guide to Configure Umbraco SAML SSO using PingFederate as IDP
Visão geral
Umbraco SAML Single Sign-On (SSO) o plugin oferece a capacidade de habilitar Logon único SAML para seus aplicativos Umbraco. Usando o Single Sign-On, você pode usar apenas uma senha para acessar seus aplicativos. Aplicação Umbraco e serviços. Nosso plugin é compatível com todos os Provedores de identidade compatíveis com SAML. Aqui, veremos um guia passo a passo para configurar o Single Sign-On (SSO) entre Umbraco e PingFederado considerando PingFederado como IdP.
Selecione sua versão do umbraco para configurar o SSO com:
Pré-requisitos: Download e instalação
- Instalar da loja NuGet
- Instalação manual
- Instalar da loja NuGet
- Instalação manual
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 9.2.3
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 9.2.3
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. inicialização.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no inicialização.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
namespace Application
{
public class Startup
{
// Add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddUmbraco(_env, _config)
.AddBackOffice()
.AddWebsite()
.AddComposers()
.Build();
services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseInstallerEndpoints();
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
}
}
}
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 10.2.3
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 10.2.3
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. inicialização.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no inicialização.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
namespace Application
{
public class Startup
{
// Add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddUmbraco(_env, _config)
.AddBackOffice()
.AddWebsite()
.AddComposers()
.Build();
services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseInstallerEndpoints();
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
}
}
}
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 11.2.3
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 11.2.3
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. programa.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no programa.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 12.2.3
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 12.2.3
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. programa.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no programa.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 13.2.3
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 13.2.3
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. programa.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no programa.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 14.2.3
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 14.2.3
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. programa.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no programa.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 15.2.4
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 15.2.4
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. programa.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no programa.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 16.2.4
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 16.2.4
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. programa.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no programa.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- Execute o aplicativo quando a configuração estiver concluída.
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login -Versão 17.2.4
> dotnet adicionar pacote miniOrange.Umbraco.SAML.SSO.Login --versão 17.2.4
- Baixar Middleware Umbraco SAML de logon único (SSO).
- Para configurar o middleware, você precisará adicionar os namespaces, serviços e middlewares abaixo em seu projeto. programa.cs Arquivo (marcado em verde), abaixo segue um exemplo.
Inclua apenas a seção destacada abaixo no programa.cs arquivo de seu aplicativo.
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- Execute o aplicativo quando a configuração estiver concluída.
Etapas de configuração
Step by Step guide for Umbraco SAML SSO using PingFederate as Identity Provider.
1. Acesse o painel de controle do plugin SAML do Umbraco.
- Após a integração, abra seu navegador e navegue até o painel do conector com o URL abaixo:
https://<umbraco-base-url>/?ssoaction=config
- Se a página de registro ou de login aparecer, você adicionou com sucesso o middleware miniOrange SAML SSO ao seu aplicativo.
- Registre-se ou faça login com sua conta clicando em Registrar-se botão para configurar o middleware.
- Após o registro bem-sucedido, você receberá uma chave de licença de teste no seu endereço de e-mail registrado.
- Para ativar o middleware, você pode:
- Introduzir o chave de licença recebido por e-mail no campo de entrada fornecido.
- Carregue o arquivo de licença que você baixou clicando em Clique aqui botão.
OR
- Em seguida, marque a caixa “Li as condições acima e desejo ativar o middleware” e clique no botão Ativar licença botão.
2. Provide Umbraco Application Metadata to PingFederate Identity Provider
Abaixo, detalhamos duas maneiras de obter os metadados do provedor de serviços SAML para configurar em seu provedor de identidade.
A] Usando URL de metadados SAML ou arquivo de metadados
- De acordo com o relatório Menu de configurações do plugin, olhe para Configurações do provedor de serviçosAbaixo disso, você encontrará o URL dos metadados, bem como a opção para baixar os metadados SAML.
- Copie o URL dos metadados ou baixe o arquivo de metadados para configurá-lo no seu provedor de identidade.
- Você pode consultar a captura de tela abaixo:
B] Carregando metadados manualmente
- De Configurações do provedor de serviços Na seção, você pode copiar manualmente os metadados do provedor de serviços, como por exemplo ID da entidade SP, URL do ACS, URL de logout único e compartilhe-o com seu provedor de identidade para configuração.
- Você pode consultar a captura de tela abaixo:
- Efetue login no seu painel de administração do usuário do Ping Federate.
- Clique no Provedor de Identidade no menu de navegação à esquerda.
- Debaixo CONEXÃO SP, clique em Criar Nova botão.
- Selecione os Perfis SSO do navegador modelo de conexão no Tipo de conexão guia e clique Seguinte.
- Selecione SSO do navegador no Opções de conexão guia e clique em Avançar.
- Selecionar Envie o como o método para importar metadados e clique em Escolher arquivo para escolher os metadados do plugin miniOrange SSO no Importar metadados aba. Clique Seguinte.
- Revise as informações sobre o Resumo de metadados guia e clique Seguinte.
- De acordo com o relatório Informações gerais guia garantir que o ID da entidade do provedor de serviços, Nome da conexão e URL base campos pré-preenchidos com base nos metadados. Clique Seguinte.
- Navegue até a SSO do navegador guia e clique no Configurar SSO do navegador. Você será redirecionado para o assistente de configuração do SSO do navegador.
- Selecione os SSO iniciado pelo IdP e SSO iniciado por SP opções no Perfis SAML guia e clique Seguinte.
- Insira o tempo de validade da afirmação desejado em Tempo de vida da afirmação e clique em Avançar. Por padrão, a configuração padrão é de 5 minutos para ambos.
- Navegue até a Criação de Asserção e clique em Configurar Criação de Asserção. Você será redirecionado para o assistente de configuração para criação de asserção.
- Na guia Mapeamento de Identidade, selecione PADRÃO e clique em Avançar.
- Selecione um formato de nome de assunto para SAML_SUBJECT no Contrato de Atributos guia e clique em Avançar.
- Clique Mapear nova instância do adaptador na Mapeamento de fonte de autenticação.
- Selecione um Instância do adaptador e clique Seguinte. O adaptador deve incluir o endereço de e-mail do usuário.
- Selecione os Use apenas os valores do contrato do adaptador na asserção SAML opção no Método de mapeamento guia e clique Seguinte.
- Selecione sua instância do adaptador como fonte e o e-mail como o Valor na Atribuir cumprimento do contrato guia e clique Seguinte.
- (Opcional) Selecione quaisquer condições de autorização que você desejar em Critérios de Emissão guia e clique Seguinte.
- Clique Pronto na Resumo.
- Clique Seguinte na Mapeamento de fonte de autenticação aba.
- Clique Pronto na guia Resumo.
- Clique Seguinte na Criação de Asserções.
- Navegue até a guia Configurações de protocolo do assistente SSO do navegador e clique em Configurar configurações de protocolo.
- Selecione POST para Confeção e especifique o login único URL do ponto final no campo URL do ponto de extremidade no URL do Serviço de Asserção ao Consumidor Clique Seguinte.
- Selecionar POST na Ligações SAML permitidas guia e clique Seguinte.
- Selecione suas políticas de assinatura desejadas para afirmações sobre Política de Assinatura guia e clique Seguinte.
- Selecione a política de criptografia desejada para asserções no Política de Criptografia guia e clique Seguinte.
- Clique Pronto na Resumo das configurações do protocolo aba.
- Navegue até a Credenciais e clique no Configurar credenciais. Você será redirecionado para o Credenciais assistente de configuração.
- Selecione o Certificado de Assinatura a ser usado com o serviço de Logon Único e selecione Incluir o certificado no elemento de assinatura no Configurações de assinatura digital guia. Clique em Concluído.
- Clique Pronto na Resumo.
- Clique Seguinte na Credenciais.
- Selecionar Ativo para o status da conexão na Ativação e Resumo guia e clique Economize.
- Now, navigate to the Ping Federate User Admin dashboard → Identity Provider.
- Clique Gerenciar tudo para Conexões SP.
- Clique Exportar metadados para a conexão do provedor de serviço desejado.
- Clique Exportar na Exportação e Resumo guia e clique em Concluído.
You have successfully configured PingFederate as SAML IDP (Identity Provider) for achieving Umbraco Single Sign-On (SSO).
3. Configure PingFederate Identity Provider Metadata in Umbraco Application
- Clique no Adicionar novo IDP botão para configurar um novo Provedor de Identidade.
- Sob o Configurações de Plugin guia, selecione PingFederado como seu provedor de identidade da lista exibida.
Há duas maneiras detalhadas abaixo com as quais você pode configurar os metadados do seu Provedor de Identidade SAML no middleware.
A] Carregar metadados usando o botão Carregar metadados do IDP:
- Se o seu provedor de identidade lhe forneceu o URL ou o arquivo de metadados (somente no formato .xml), você pode simplesmente configurar os metadados do provedor de identidade no middleware usando o Carregar metadados do IDP opção.
- Copie o URL dos metadados ou baixe o arquivo de metadados para configurá-lo no seu provedor de identidade.
- Você pode consultar a captura de tela abaixo:
- Você pode escolher qualquer uma das opções de acordo com o formato de metadados disponível.
B] Configure os metadados do provedor de identidade manualmente:
- Depois de configurar seu Provedor de Identidade, ele irá fornecer-lhe ID da entidade IDP, URL de logon único do IDP e Certificado SAML X509 campos respectivamente.
- Clique Economize para salvar seus dados de IDP.
4. Testando SAML SSO
- Após carregar os detalhes dos metadados, navegue até Configurações do Provedor de Identidade seção. Passe o mouse sobre o Selecionar ações menu suspenso e clique em Configuração de Teste.
- A captura de tela abaixo mostra um resultado bem-sucedido. Clique em Integração SSO para continuar com a integração do SSO.
- Se você estiver enfrentando algum erro no middleware, uma janela semelhante à mostrada abaixo será exibida.
- Para solucionar o erro, siga os passos abaixo:
- Debaixo Resolução de problemas guia, ative a alternância para receber os logs do plugin.
- Uma vez habilitado, você poderá recuperar os logs do plugin navegando até Configurações de Plugin guia e clicando em Configuração de Teste.
- Faça o download do arquivo de log do Resolução de problemas Abra a aba para ver o que deu errado.
- Você pode compartilhar o arquivo de log conosco em umbracosupport@xecurify.com e nossa equipe entrará em contato com você para resolver seu problema.
Tipo de login do Umbraco
- Em seguida, selecione o Tipo de login na lista suspensa no lado direito da página Configurações do Provedor de Identidade.
- Você pode escolher entre BackOffice, Vogal, ou Atributo personalizado baseado em.
- Observação: O Atributo personalizado baseado em O tipo de login está disponível em Premium e Empreendimento versões.
5. Mapeamento de Atributos
- O mapeamento de atributos, o mapeamento de funções e a restrição de domínio estão disponíveis no Premium e Empreendimento versões do middleware.
6. Configurações de login
- Passe o mouse sobre Selecionar ações e clique em Copiar link SSO.
- Use o seguinte URL como um link no aplicativo de onde você deseja executar o SSO:
https://<umbraco-base-url>/?ssoaction=login
- Por exemplo, você pode usá-lo como:
<a href="https://<umbraco-base-url>/?ssoaction=login">Log in</a>
7. Configurações de logout
- Use a seguinte URL como um link para seu aplicativo de onde você deseja executar o SLO:
https://<umbraco-base-url>/?ssoaction=logout
- Por exemplo, você pode usá-lo como:
<a href="https://<umbraco-base-url>/?ssoaction=logout">Log out</a>
Artigos Relacionados
Obrigado pela sua resposta. Entraremos em contato em breve.
Algo deu errado. Envie sua consulta novamente.
