🔒Cifrado SSL · PKCE S256 Verificado
Autorizar Inicio de Sesión
Aplicación solicita vincularse a tu cuenta oficial de PROVIWEB.
PKCE S256
Validando sesión segura y credenciales...
⚙️ Detalles Técnicos de la Solicitud
▼
Cliente: -
Redirect URI: -
Scopes: -
State (Anti-CSRF): -
PKCE Challenge: -
Método PKCE: S256
Protocolo: OAuth 2.0 (RFC 6749) + PKCE (RFC 7636)
Portal Oficial: proviweb.com
Al autorizar, permites el intercambio seguro de tokens según los Términos y Condiciones y la Política de Privacidad de PROVIWEB.
PROVIWEB CONNECT SDK · DOCUMENTACIÓN OFICIAL
Integración SSO & OAuth 2.0 con PKCE
Permite que cualquier aplicación externa, aplicación Android/iOS o plataforma web implemente el botón oficial "Iniciar Sesión con PROVIWEB" con validación criptográfica PKCE S256 y canje de tokens en tiempo real.
🌐 Endpoints Oficiales de PROVIWEB Connect
GET
Portal de Autorización (Consent Screen):
https://proviweb.com/oauth-authorize.html
POST
Endpoint de Canje de Tokens:
https://proviweb.com/oauth/token
💻 Ejemplos de Implementación de Código
// 1. AndroidManifest.xml: Registrar el Deep Link de retorno
<activity android:name=".OAuthCallbackActivity" android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="mi-app" android:host="oauth" android:path="/callback" />
</intent-filter>
</activity>
// 2. Lanzar CustomTabs con PKCE S256
String verifier = PkceUtil.generateCodeVerifier(); // 32 bytes base64url unpadded
String challenge = PkceUtil.generateCodeChallenge(verifier); // SHA-256 base64url unpadded
String state = UUID.randomUUID().toString();
Uri authUri = Uri.parse("https://proviweb.com/oauth-authorize.html").buildUpon()
.appendQueryParameter("client_id", "com.ejemplo.miapp")
.appendQueryParameter("redirect_uri", "mi-app://oauth/callback")
.appendQueryParameter("response_type", "code")
.appendQueryParameter("scope", "profile email qav")
.appendQueryParameter("state", state)
.appendQueryParameter("code_challenge", challenge)
.appendQueryParameter("code_challenge_method", "S256")
.build();
CustomTabsIntent customTabs = new CustomTabsIntent.Builder().build();
customTabs.launchUrl(context, authUri);
// 3. Canjear el 'code' recibido en el callback mediante POST a /oauth/token
// Header: Content-Type: application/x-www-form-urlencoded
// Body: grant_type=authorization_code&code={CODE}&client_id=com.ejemplo.miapp&code_verifier={VERIFIER}
🧪 PROVIWEB Connect Sandbox & Probador Interactivo
Prueba el flujo de inicio de sesión con los clientes oficiales del ecosistema o simula tu propia aplicación: