Mostrando entradas con la etiqueta IPv6. Mostrar todas las entradas
Mostrando entradas con la etiqueta IPv6. Mostrar todas las entradas

diciembre 29, 2014

Manejo de Tokens de acceso en facebook.

¿Qué es un token de acceso?


Un testigo de acceso es básicamente un largo ID que se requiere para hacer llamadas a la 
API de gráficos . El token identifica lo siguiente:
  • La aplicación de Facebook ID que está haciendo la solicitud
  • El ID de usuario de Facebook que la solicitud se asocia con (si procede)
  • El ID de página que la solicitud se asocia con (si es aplicable)
También contiene información sobre el tiempo en segundos hasta que el token de acceso expira y algunas veces contiene un identificador llamado machine_id que identifica al equipo que solicitó el token de acceso. El machine_id se utiliza para verificar la autenticidad de los token de acceso. 
Corta duración vs tokens de acceso de larga vida
Por defecto, cuando usted solicita un token de acceso de usuario, Facebook devolverá un token de acceso de corta duración que expirará en 2 horas. O como los de documentación oficiales estados ", sobre una o dos horas". No estoy seguro de la razón de la explicación tiempo difusa.
Este corto periodo de tiempo podría ser problemático si usted planea almacenar el token de acceso de la base de datos y utilizarla para realizar solicitudes para graficar más tarde. Así que tendrás que intercambiar el token de acceso de corta duración para un token de acceso de larga vida que será válida por 2 meses antes de que caduque.
Con el fin de ampliar su token de acceso de corta duración con un token de acceso de larga vida, tendrás que utilizar el nuevo AccessToken entidad desde el SDK (ver más abajo).

Tipos de tokens de acceso

Hay un número de diferentes tokens de acceso que pueden ser usados ​​para interactuar con el gráfico. Para mayor comodidad, Facebook ofrece una herramienta de token de acceso que enumera tokens de acceso para las diferentes aplicaciones que administran. También hay un acceso depurador simbólico que decodificar una señal de acceso y devolver los datos identificativos subyacentes.
Pero no todos los tokens de acceso son los mismos. Dependiendo de lo que quieres hacer, tendrás que enviar una señal diferente con su solicitud a Graph.

Token de acceso de usuario

Quizás el más bien conocido y token de acceso ampliamente utilizado es el token de acceso de usuario. Este es el símbolo de acceso que desea utilizar al realizar llamadas a Gráfico en nombre de un usuario específico.
Un token de acceso de usuario se ve así:
CAABwiWr8tH8BAGKCYOIgoMwJ9T0ZAmJ6KJJNcUjzmftdAOCx1RgzxZAjzGB1s37DDCEoy9r2VgrCLffCTvEGe9cZBZPAwBhygi2ZpTubZC2eCzMe16CLP4Wlc9bStWGwUNYoLEl4dXu4uJl2CCLiFXEtP4GKDv0Gk4s35iXty77KZBx5NYBCcEUs98WjdJQcXLsb1X2ZBaMTW2AZDZN
Y un token de acceso de usuario que permitirá:
  • Obtener información sobre el usuario.
  • Publicar / actualizar / borrar en nombre del usuario suponiendo que el usuario ha concedido los permisos adecuados .
  • Tokens de larga duración se pueden utilizar para generar nuevos tokens de acceso de larga duración utilizando un código .

El ayudante más común es la FacebookRedirectLoginHelper que obtener un token de acceso a través de un enlace de redirección.

session_start ();
 usar Facebook \ FacebookRedirectLoginHelper;
 usar Facebook \ FacebookSDKException;

$ Ayudante = nuevo FacebookRedirectLoginHelper ( '{callback-url}' , '{app-id}' , '{app-secreta}' );

tratar {
     $ session = $ ayudante -> getSessionFromRedirect ();
} catch (FacebookSDKException $ e ) {
     $ session = nulo ;
}

si ( $ session ) {
   // El usuario ha iniciado sesión, obtener la entidad AccessToken. 
  accessToken $ = $ session -> getAccessToken ();
   . // Cambio de la señal de corta duración, como una señal de vida larga 
  $ longLivedAccessToken = $ accessToken -> extend ();
   // Ahora almacenar el token de larga vida en la base de datos 
  //. . . $ Db-> Tienda ($ longLivedAccessToken); 
  // realizar llamadas a Gráfico con el símbolo de larga vida. 
  //. . . 
} otro {
   echo  '<a href = "' . $ ayudante -> getLoginUrl (). '"> Entrar con Facebook </a>' ;
}

Página token de acceso

Un token de acceso de la página se ve como un token de acceso de usuario. También identifica el ID de la página de destino. Esta es la señal que desea utilizar para realizar acciones en nombre de una página específica, tales como:
  • Administrar la información sobre el perfil de la página.
  • Publicar / actualizar / borrar en nombre de la página.

La obtención de un token de acceso de la página

Tokens de acceso Página se pueden obtener de un usuario que tenga privilegios de administrador para la página de destino y también ha autorizado su aplicación con lamanage_pages permiso .
utilizar Facebook \ FacebookRequest;

// Suponiendo $ session se obtuvo de un ayudante ...

// Obtener una lista de páginas que este usuario admins; requiere "manage_pages"

  -> GetGraphObject ()
  -> AsArray ();

foreach ( $ PageList  como  $ page ) {
   $ pageAccessToken = $ page [ 'señal_acceso' ];
   // tienda $ pageAccessToken y / o 
  // enviar solicitudes a Graph en nombre de la página 
}
Las credenciales de acceso de la página que se devuelven de la / me / cuentas de punto final vencerá por omisión si utilizó un token de acceso de usuario de corta duración para obtenerlos. Si ha utilizado una muestra longevo acceso de los usuarios para obtenerlos, el/ me / cuentas de punto final volverá credenciales de acceso de la página que nunca caducan.
También te darás cuenta de las permanentes array se devuelve que lista los permisos administrativos que el usuario tiene en esta página.

Token de acceso App

Un token de acceso de aplicación se ve así:
1234567890 | EnEYhJBbcc-gm84CeUivNgC0bZZ
El token se compone de el ID de aplicación y el secreto aplicación o un hash válido del secreto aplicación. Un token de acceso de aplicación le permitirá gestionar la información de la aplicación, incluyendo:
  • Usuarios de prueba
  • Usuarios baneados
  • Actualización en tiempo real suscripciones
  • Los roles de usuario
  • Y mucho más ...

La obtención de un token de acceso de aplicaciones

Acceso App tokens no requieren ninguna llamada al Facebook de obtener. Usted puede hacer un token de acceso concatenando el ID de aplicación con el secreto aplicación y el uso de un delimitador de tubería.
{App-id} | {app secreto}
Acceso App tokens no caducan. Y ya que contienen el secreto aplicación, usted nunca quiere utilizarlos en el lado del cliente.

Extensión de un token de acceso de corta duración

Una vez que obtenga una válida FacebookSession con la redirección , lienzo o javascript ayudante, puede utilizar getAccessToken () para obtener el AccessToken entidad. Desde el primer testigo de acceso que usted recibe será de corta duración, puede fácilmenteextender () a hacer un token de acceso de larga vida.
utilizar Facebook \ FacebookSDKException;

// Suponiendo $ session se obtuvo de un ayudante ...

// Obtener la entidad AccessToken. 
accessToken $ = $ session -> getAccessToken ();

tratar {
   // Intercambiar el token de corta duración por un valor simbólico de vida larga. 
  longLivedAccessToken $ = $ accessToken -> extend ();
} catch (FacebookSDKException $ e ) {
   echo  "Error extiende token de acceso de corta duración: ' . $ e -> getMessage ();
   salida ;
}

// Ahora almacenar el token de larga vida en la base de datos 
//. . . $ Db-> Tienda ($ longLivedAccessToken); 
// Realizar llamadas para graficar con el token de larga vida. 
//. . .

Obtención de información detallada acerca de un token de acceso

El Graph API tiene una utilidad / debug_token punto final que usted puede utilizar para obtener información acerca de un token de acceso. Y el SDK soporta esta funcionalidad sacarlo de la caja.
utilizar Facebook Entidades \ \ AccessToken;
 usar Facebook \ FacebookSDKException;

$ AccessToken = nuevo AccessToken ( '{my-access token}' );

tratar {
   // Obtener información sobre el token 
  // Devuelve un objeto GraphSessionInfo 
  $ accessTokenInfo = $ accessToken -> getInfo ();
} catch (FacebookSDKException $ e ) {
   echo  "Error al obtener acceso a información del token: ' . $ e -> getMessage ();
   salida ;
}

// Volcado de la información sobre el token 
var_dump ( $ accessTokenInfo -> asArray ());
Por supuesto, si lo que desea es depurar una ficha mientras estás desarrollando tu aplicación, siempre se puede utilizar el conveniente depurador proporcionado por Facebook.

Las mejores prácticas para el mantenimiento de tokens de acceso de larga seres a través del tiempo

Si su aplicación es el envío de solicitudes con un token de acceso de larga vida a la Graph API, en nombre de sus usuarios con frecuencia, su aplicación está en riesgo de ser marcado como spam. Para evitar esto, se puede utilizar un código para obtener nuevas fichas de larga vida .
El flujo básico es algo como esto:
  1. Recuperar el token de acceso de los usuarios de larga vida de su base de datos.
  2. Utilice el token de larga duración para solicitar un código.
  3. Utilice el código de solicitar un nuevo token de acceso de larga vida.
  4. Utilice el nuevo token de acceso de larga duración para realizar llamadas a Graph en nombre del usuario.
use Facebook\FacebookSession;
 use Facebook\FacebookRequest;
 use Facebook\Entities\AccessToken;
 use Facebook\FacebookSDKException;

$ LongLivedAccessToken = nuevo AccessToken ( '{vivido largo-access token}' );

tratar {
   // Obtener un código de un token de acceso de larga vida 
  $ code = AccessToken :: getCodeFromAccessToken ( $ longLivedAccessToken );
} catch (FacebookSDKException $ e ) {
   echo  "Error código conseguir: ' . $ e -> getMessage ();
   salida ;
}

tratar {
   // Obtener un nuevo token de acceso de larga duración a partir del código 
  $ newLongLivedAccessToken = AccessToken :: getAccessTokenFromCode ( $ code );
} catch (FacebookSDKException $ e ) {
   echo  "Error al obtener un nuevo token de acceso de larga vida: ' . $ e -> getMessage ();
   salida ;
}

// Hacer llamadas Graficar usando $ shortLivedAccessToken 
$ session = nuevo FacebookSession ( $ newLongLivedAccessToken );

$ Request = nuevo FacebookRequest ( $ session , 'GET' , '/ me " );
 $ userData = $ request -> execute ()
  -> GetGraphObject ()
  -> AsArray ();

var_dump ( $ userData );
Si quieres bucear más profundo, revisar la documentación token de acceso oficial en Facebook.

junio 22, 2012

Plantean la necesidad de una regulación que garantice la trazabilidad en IPv6

El pasado 6 de junio, además de conmemorar el 68º aniversario del Desembarco de Normandía, Internet asistió a un hecho de gran importancia puesto que unas 3.000 empresas y grandes players del sector tecnológico como Google, Facebook, Comcast, Yahoo, Microsoft Bing, Cisco o D-Link, comenzaron a operar usando el protocolo IPv6, y coexistiendo con sus operaciones en IPv4, dando así inicio a un nuevo capítulo en la historia de la red. La llegada de IPv6 abre la puerta al llamado Internet de las Cosas al ofrecernos 640 sextillones de direcciones frente al agotamiento de direcciones que estábamos sufriendo con el protocolo actual. Si bien muchos vemos IPv6 como un soplo de aire fresco y una ventana a nuevas oportunidades, existen algunas organizaciones a las que la llegada de este nuevo protocolo no les hace demasiada gracia (al menos en las condiciones actuales) y organismos como la DEA o el FBI estadounidense o la Polícia Montada del Canadá querrían promover una regulación que les permita obtener un censo fiable y actualizado de la asignación de direcciones con la idea de poder identificar usuarios dentro de sus investigaciones, es decir, garantizar la trazabilidad.
En muchos países, a través de mandatos judiciales, las fuerzas de seguridad pueden consultar la asignación de direcciones IP, identificar operadores y requerirles a éstos el nombre del titular de la conexión que tenía asignada una dirección IP concreta. Sin embargo, con el método de gestión actual de IPv6, las direcciones IPv6 censadas por el American Registry for Internet Numbers (ARI) podrían no estar actualizadas debido a que se manejará un mayor volumen de información y se entregarán bloques más grandes de direcciones. En comparación con IPv4, mantener actualizada la base de datos de asignaciones es algo mucho más complejo y para las autoridades (FBI, DEA, etc) esta situación es algo que les preocupa y “desarma” sus actuales sistemas de vigilancia, rastreo o localización.
¿Y cuál es la solución que sugieren? Si la ARI no puede mantener datos actualizados porque los operadores no los proporcionen, quizás la solución pase por obligar al sector privado a mantener los datos al día y, por tanto, promover la redacción de algún tipo de regulación que garantice que los datos van a estar actualizados y no conducirán a las investigaciones a callejones sin salida:
Hoy en día se mantienen registros completos y actualizados con las direcciones IP asignadas a cada operador. Dependiendo de cómo se lance IPv6 al mercado, este registro podría no ser de utilidad a la hora de identificar un dispositivo conectado a la red
¿Ya está pensando el FBI en controlar la red? La respuesta a esta pregunta, realmente, no es nada sencilla y, al final, el buen o mal uso que las autoridades den a este tipo de censos depende exclusivamente de las propias autoridades. Algunas sentencias han dictaminado que una dirección IP no sirve para identificar personas sino que proporciona información relativa a una ubicación, una información que puede seguir siendo de utilidad en investigaciones y procesos judiciales (y, por experiencia, nos pueden requerir información por denuncias de lo más variopinto).

junio 11, 2012

IPv4 e IPv6: Todo lo que necesitas saber

Internet funciona a través de protocolos, que son combinaciones numéricas que establecen conexiones entre computadoras. Cuando alguien inicia la conexión a Internet, miles de números y direcciones mantienen esa conexión online. 
 Los protocolos IPv4 e IPv6, todavía causan ciertas dudas a los usuarios de Internet. Es preciso saber que la norma IPv4 nació junto a la red y ahora está siendo sustituido por el IPv6 pero, ¿en qué consiste cada protocolo?

IPv4

IPv4 significa Internet Protocol Version 4, o versión 4 del Protocolo de Internet
. Es la tecnología que permite que los equipos puedan conectarse a Internet, cualquiera sea el dispositivo (PC, notebook, smartphone, tablet, etc.) Cada uno de ellos en el instante que se conecta a internet, obtiene un código único, para poder enviar y recibir datos con otras conexiones.

IPv6

El IPv6 es la sexta revisión de los protocolos de Internet y es el sucesor natural del IPv4. Esencialmente, cumple la misma función, pero en 128 bits.

Por qué se usa el IPv4

El IPv4 transfiere direcciones de protocolos de 32 bits. Sostiene aproximadamente 4,29 billones de IPs alrededor del mundo, provocando la crisis actual que ocasiona que el sistema ya no soporte más direcciones.

Cómo resolverá este problema el IPv6

El nuevo sistema soportará aproximadamente 340.282.366.920.938.000.000.000.000.000.000.000.000 de direcciones. Un número prácticamente incalculable, pero lo positivo es que logrará soportar la demanda del crecimiento de Internet por muchos años. Y eso se debe a que los IPs trabajan en 128 bits.

Cómo se va a realizar el cambio de protocolos?

Los protocolos ya comenzaron a ser sustituidos, es más, los dos sistemas funcionan paralelamente. Google, Facebook y otras grandes compañías realizan constantes pruebas para conocer cómo funcionarán los sistemas cuando comience la migración definitiva.

Cómo afectará esto a los usuarios?

En primera instancia, no afectará a ningún tipo de usuario. Los sistemas operativos como Windows 7 Service Pack 1, Mac OS X 10.2 y posteriores cuentan con IPv6, el problema está en los routers que deberán ser sustituidos por modelos más actuales para poder servir a las conexiones.

Seria bueno ver el video para comprender mas a detalle.