¿Necesitas ayuda? ¡Estamos aquí!
Gracias por su encuesta. Nuestro equipo pronto se comunicará con usted.
Si no recibe noticias nuestras dentro de las 24 horas, no dude en enviar un correo electrónico de seguimiento a info@xecurify.com
Resultados de la búsqueda:
×La solución de inicio de sesión único (SSO) OAuth de JavaScript de miniOrange permite una autenticación segura y sin inconvenientes para aplicaciones creadas con bibliotecas y marcos de JavaScript populares como React, Vue.js, Next.js y AngularAl utilizar tokens web JSON (JWT), los usuarios pueden acceder fácilmente a múltiples aplicaciones con un único conjunto de credenciales de inicio de sesión, lo que mejora significativamente la seguridad y la experiencia del usuario.
Integra fácilmente los protocolos OAuth 2.0 y OpenID Connect en tus aplicaciones JavaScript existentes, conectándolas sin esfuerzo con proveedores de identidad como Microsoft Entra ID, Okta, AWS Cognito y otros. Además, ofrece a los usuarios prácticas opciones de inicio de sesión social a través de proveedores como Google, Facebook, Twitter y LinkedIn. Simplifica tus procesos de inicio de sesión, mejora la seguridad y ofrece una experiencia fluida y sin complicaciones en todas tus aplicaciones basadas en JavaScript con miniOrange. SSO.
Con miniOrange JavaScript OAuth SSO, obtienes:
miniOrange proporciona autenticación de usuario de diversas fuentes externas, que pueden ser Directorio (como ADFS, Microsoft Active Directory, OpenLDAP, AWS, etc.), Proveedores de identidad (como Microsoft Entra ID, Okta, AWS) y muchos más. Puede configurar su directorio/almacén de usuarios existente o Agregar usuarios en miniOrange.
Asegúrese de que la marca de su organización ya esté configurada en Personalización >> Inicio de sesión y registro Branding en el menú izquierdo del tablero.







npm i mo-oauth-sdk
| ID de cliente | El ID de cliente de su aplicación que copiamos anteriormente aquí |
| Secreto del cliente | El secreto del cliente de su aplicación que copiamos anteriormente aquí |
| BASE_URL | Su URI base debería verse así: https://<YOUR_DOMAIN>.xecurify.com/moasEs el nombre de su marca seguido de es.xecurify.com/moas. |
| URI DE REDIRECCIÓN | Esta es la misma URL de redirección que añadimos al configurar la aplicación OAuth en miniOrange. Debería verse así: https:// /sso/devolución de llamada |
| URI DE REDIRECCIÓN DE CIERRE DE SESIÓN | Esta es la misma URL de cierre de sesión que añadimos al configurar la aplicación OAuth en miniOrange. Debería verse así: https:// /acceso |
| URI DEL CORREDOR | Si está utilizando un IDP externo distinto de miniOrange, vaya a Aplicaciones > Puntos finales de OAuth > Punto final de autorización > copiar la URL del segundo agente |



Nota: Almacene las credenciales de su aplicación de forma segura en variables de entorno o en un archivo de propiedades y úselas aquí.
import { OAuthConfig } from 'mo-oauth-sdk';
const conf = new OAuthConfig();
conf.setClientId(YOUR_CLIENT_ID);
conf.setClientSecret(YOUR_CLIENT_SECRET);
conf.setBaseUrl(YOUR_BASE_URL);
conf.setRedirectUri(YOUR_REDIRECT_URI);
conf.setLogoutRedirectUri(YOUR_LOGOUT_URI); //optional
conf.setBrokerUri(YOUR_BROKER_URI); //optional
export default config;
import {startAuthorization} from 'mo-oauth-sdk';
import conf from './Conf'; //Adjust path accordingly
.
.
.
const login = ()=>{
startAuthorization(conf)
}
Una vez que el usuario se autentica exitosamente, el servidor de autorización lo redirigirá a la ruta /sso/callback de su aplicación con los parámetros de autorización.
Para solucionar esto:
Debe definir la ruta /sso/callback en su aplicación y crear un componente para manejarla.
npm install react-router-dom
import React, { useEffect} from "react";
import { handleCallbackUri, TokenHandler} from 'mo-oauth-sdk';
import conf from './Conf'; //adjust the path accordingly
function Callback() {
useEffect(() => {
const handleCallback = async () => {
const { accessToken, refreshToken, error } = await handleCallbackUri(conf, window.location.href);
if (error) {
// Handle errors if any
return;
}
//Store tokens securely in your preferred storage.
if (accessToken) {
// Process access token and retrieve user details
const { user, error } = await TokenHandler.handleAccessToken(accessToken, conf);
if (user) {
// Store user details securely and navigate to dashboard
} else {
// Handle errors if any
return;
}
}
};
handleCallback();
}, []);
return (
<div>
<img src="https://i.gifer.com/ZKZx.gif" alt="Loading.." />
</div>
);
}
export default Callback;
import { BrowserRouter as Router, Routes, Route } from "react-router-dom";
import Callback from "./Callback"; //adjust path accordingly
import Home from "./Home";
function App() {
return (
<Router>
<Routes>
{/* Existing routes..*/}
<Route path="/" element={<Home />} />
{/* Add new SSO callback handler here*/}
<Route path="/sso/callback" element={<Callback />} />
</Routes>
</Router>
);
}
export default App;
import { Routes } from '@angular/router';
import { CallbackComponent } from './callback/callback.component';
export const routes: Routes = [
{ path: 'sso/callback', component: CallbackComponent }
];
import { Component, OnInit } from '@angular/core';
import { handleCallbackUri, TokenHandler } from 'mo-oauth-sdk';
import conf from './Conf'; //adjust the path accordingly
@Component({
…
})
export class CallbackComponent implements OnInit {
async ngOnInit(): Promise {
const { accessToken, refreshToken, error } = await handleCallbackUri(conf, window.location.href);
if (error) {
// Handle errors if any
return;
}
if (accessToken) {
// Store and Process access token to retrieve user details
const { user, error } = await TokenHandler.handleAccessToken(accessToken, this.myconfig);
if (user) {
// Store user details securely and navigate to dashboard
} else {
// Handle errors if any
return;
}
}
}
npm install vue-router@4
import { onMounted } from 'vue';
import { handleCallbackUri, TokenHandler } from 'mo-oauth-sdk';
import conf from './Conf'; //adjust the path accordingly
onMounted(async () => {
const { accessToken, refreshToken, error } = await handleCallbackUri(conf, window.location.href);
if (error) {
// Handle errors if any
return;
}
//Store tokens securely in your preferred storage.
if (accessToken) {
// Process access token and retrieve user details
const { user, error } = await TokenHandler.handleAccessToken(accessToken, conf);
if (user) {
// Store user details securely and navigate to dashboard
} else {
// Handle errors if any
return;
}
}
}
});
import { createRouter, createWebHistory } from 'vue-router';
import Home from './components/Home.vue';
import Dashboard from './components/Dashboard.vue';
const routes = [
{
// Your existing routes
},
{
//add callback route
path: '/callback',
name: 'Callback',
component: Callback
}
];
const router = createRouter({
history: createWebHistory(),
routes
});
export default router;
import { logout} from "mo-oauth-sdk";
import conf from './Conf'; //adjust the path accordingly
const logoutUser= async()=>{
logout(conf);
}
import {isSessionActive} from "mo-oauth-sdk";
const validateToken=async() => {
let response = await isSessionActive(conf, accessToken)
if(response)
//session is active do nothing
else{
//logout user and redirect to session expiration page
}
}
import { TokenHandler} from "mo-oauth-sdk";
const getNewToken= async()=>{
const refreshToken = //fetch your stored refresh token
const {error, access_token} = await TokenHandler.getNewAccessToken(refreshToken, conf);
if(!error){
//update new access token
return;
}
//handle errors if any
console.log("Error in getting new access token..", error)
}
Flujo esperado:
Esto completa el proceso de inicio de sesión de OAuth, lo que permite al usuario acceder a la aplicación de forma segura.