Material PHP Conference 2011: Ejemplo de migración de WordPress sobre Azure

El pasado viernes tuve el placer de exponer en la PHP Conference 2011 de Barcelona hablando sobre “Ejemplo de migración de WordPress sobre Windows Azure”.

Nunca había ido a una conferencia de este tipo pero me agradó el interés de la comunidad PHP y el alto nivel de los asistentes.

Descargar presentación

Material WordCamp Sevilla 2011: WordPress sobre Azure

Este domingo tuve la oportunidad de estar en el WordCamp de Sevilla donde enseñé el ejemplo de migración de WordPress sobre Azure, en concreto el portal http://www.muywindows.com/ portal especializado en noticias del mundo Microsoft. WordPress y Azure

Descargar presentación

 

Estoy sorprendido de la capacidad de WordPress de ejecutarse en distintos entornos, pero también lo estoy de Azure de soportar aplicaciones en lenguajes que no sean .NET como Phyton, PHP y Java.

Hay mucho material sobre cómo montar un WordPress en Azure, pero todos utilizan un plugin para seleccionar las imágenes desde el blob storage, en esta ocasión hemos utilizado AzureDrive para que la integración de WordPress sea completa y la experiencia de usuario sea la misma que onpremise.

En breve publicaremos cómo lo hemos hecho.

Arquitectura WordPress sobre Azure

 

Descargar presentación

Material WebCast Beneficios de vender con Microsoft Online Services

Os dejo el material y vídeo del WebCast “Beneficios de vender con Microsoft Online Services” en el que se vio qué servicios SaaS de Microsoft Online Services podemos ofrecer en especial Office365 y Windows Intune.

Desde la presentación tendréis acceso a enlaces para empezar a utilizar estos servicios y cómo venderlos a nuestros clientes.

Descargar Vídeo y presentación

Office365: Invitar usuarios Externos

Desde SharePoint Online podemos colaborar con usuarios externos a Office365 sin consumo de licencias, se podría asemejar al concepto de Extranet. Mediante esta funcionalidad el administrador de la colección puede enviar invitaciones al site a usuarios externos pudiendo incluirse éstos incluso en los grupos de visitantes o miembros. A estos usuarios les llegará un mail indicando que han sido invitados al site junto con la url de acceso. Para poder acceder los usuarios externos deben disponer de un mail registrado como cuenta en Windows Live ID o en Microsoft Online Service.

De momento existe un máximo de 50 usuarios externos aunque puede que en siguientes versiones podamos ampliar el número de usuarios externos comprándolos por paquetes.

Para utilizar esta funcionalidad hay que habilitar la feature a nivel de colección de sitios “External users invitations”. Para enviar una invitación a un usuario, desde el botón de “Acciones del sitio” aparecerá la opción “Share Site”, al seleciconarla aparecerá una pantalla desde la que introduciremos todos los mails que queremos invitar a nuestra colección. Los usuarios recibirán un mail como se muestra en la imagen, de forma que cuando pulsen en “Aceptar la invitación” navegarán a la url del site desde el que se les ha invitado.

 

image

imageimageimage

Mail de invitación de los usuarios externos:

image

Pantalla de logon para usuarios externos en Office365:

image

WebCast Beneficios de vender con Microsoft Online Services

Hoy a las 12 se realizará este WebCast donde mostraremos los servicios online que Microsoft ofrece actualmente en modo SaaS, las características y modo de licenciamiento de Office365 y Windows Intune. También veremos los beneficios que tienen los partners al vender servicios de Microsoft Online Services y explicaremos las ventajas de participar en el Microsoft Cloud Essentials Pack.

 

Podéis acceder desde el Link de registro para partners: REGISTRO

O bien si no disponéis de usuario en la MPN: https://www.livemeeting.com/cc/microsoft/join?id=GNG8RD&role=attend&pw=F%7E8%29%3Dwwdk

Modelos de integración remota con SharePoint Online

Ya hemos adquirido Office365 y tenemos que subir a SharePoint Online los documentos que ya tenemos en nuestra empresa o bien queremos mostrar desde nuestras aplicaciones datos almacenados en SharePoint Online, pero ¿Cómo lo hacemos?.

Entre las opciones de integración con SharePoint Online disponibles podemos utilizar las siguientes:

  • Sin desarrollo
  • Con desarrollo
    • Mediante el modelo de objetos cliente
    • A través de los servicios web y REST de SharePoint Online

 

WebDav

Nos permite explorar las bibliotecas de SharePoint desde la ventana de explorador de Windows, pudiendo subir o descargar documentos como si fuera una carpeta de red.

imageimage

Microsoft SharePoint WorkSpace 2010

Consiste en una aplicación cliente que podemos adquirir con Microsoft Office Professional Plus 2010, mediante WorkSpace podemos trabajar con sitios de SharePoint de forma conectada y en modo Offline, encargándose WorkSpace de toda la gestión de concurrencia de modificaciones. Además WorkSpace está pensado para optimizar la subida de documentos y nos notifica ante nuevas modificaciones y conflictos encontrados.

image

 

SharePoint Designer 2010

Es una herramienta cliente que nos permite personalizar SharePoint sin necesidad de escribir código. También podremos subir y descargar documentos desde sus opciones de navegación:

image

 

Modelo de objetos cliente

Consiste en un API que permite interactuar con elementos de SharePoint desde aplicaciones que se ejecutan fuera del servidor, en concreto: Silverlight, ECMASCRIPT y aplicaciones de escritorio. La ventaja de utilizar el MO cliente es que el código necesario es parecido al utilizado en código del servidor.

El MO cliente es la interfaz recomendada a la hora de realizar desarrollo externos a SharePoint. Cuando estemos realizando una aplicación Silverlight o ECMASCRIPT que no esté alojada en Office365 tendremos que validarnos primero contra Office365 y utilizar los token de seguridad asignados en las llamadas del MO cliente (excepto si utilizamos la federación de identidades). Esto se debe a que Office365 utiliza autenticación basada en claims consumiendo su propio servicio de autenticación.

Para autenticarnos en Office 365 aconsejo utilizar el ejemplo de Wictor Wilén, How to do active authentication to Office 365 and SharePoint Online, en el que podréis encontrar una implementación de un Helper para obtener un CookieContainer con el token de seguridad para luego utilizarlo en las llamadas del MO cliente.

Desde el post “Autenticación remota en SharePoint Online mediante la autenticación basada en notificaciones” describe cómo utilizar la clase ClaimClientContext con SharePoint Online, pero en este caso el usuario tendrá que especificar las credenciales manualmente.

Development options in SharePoint Online

 

Servicios web y REST de SharePoint Online

SharePoint Online dispone de una serie de servicios web WCF y REST con los que podremos comunicarnos. En este caso para autenticarnos utilizaremos el sistema mencionado en el punto anterior. Para poder manejar fácilmente la propiedad CookieContaniener utilizaremos la opción de compatibilidad al crear la clase Proxy desde Visual Studio.

image

Cómo conseguir el logotipo Powered by Windows Azure

El programa logotipo Powered by Windows Azure permite ayudar a los clientes y partners promocionar sus productos y servicios Azure, además de poder incluirse en el catálogo de casos de éxito de Azure. Desde el portal Microsoft Platform Ready podremos conseguir un logotipo que podremos añadir a nuestro portal indicando que nuestro servicio ha sido certificado. Para conseguir el logotipo se debe asegurar que pasa un test en el que se comprueba:image

  • Que la solución se ejecuta sobre una IP válida de Windows Azure
  • Que el contenido y funcionalidad no viola ninguna de las leyes
  • Que cumple con los requisitos mínimos de rendimiento

 

Para conseguir el logotipo Powered Windows Azure debemos logarnos con una cuenta Windows Live ID en el sitio de Microsoft Platform Ready, desde aquí registraremos una aplicación indicando una breve descripción y la plataforma sobra la que se ejecuta (para Azure seleccionaremos “Plataformas de la nube” y “Windows Azure Platform”).

imageimage

Una vez registrada comenzaremos la ejecución de un test descargándonos e instalando en nuestro equipo la herramienta “Microsoft Platform Ready Test Tool”. Desde esta herramienta realizaremos un test acerca del estado de nuestra aplicación sobre Azure, por lo que necesitaremos que nuestra aplicación o servicio esté ejecutándose en ese momento sobre Azure. Al ejecutar la aplicación nos solicitará el nombre del test y la plataforma a testear (en este caso “Windows Azure”). A continuación introduciremos los datos identificativos de nuestra aplicación sobre Azure:

  • Susbscription ID: Identificador de la suscripción de Azure.
  • Certification File: Fichero *.cer configurado en Azure para tareas de administración.
  • Physical server Address:: Url de la aplicación en Azure, por ejemplo http://estoyenlanube.cloudapp.net.

imageimageimageimage

En ocasiones podremos encontrarnos un error del tipo “The subscription id or the certification provided is invalid” ahún siendo correctos los datos. Esto se debe a que o bien el certificado que estamos utilizando no es un certificado de configuración válido o bien no lo hemos agregado como certificado válido para nuestra suscripción. Para generar el certificado desde la consola de comandos de visual Studio ejecutamos el siguiente comando: makecert -r -pe -a sha1 -n CN=AzureMgmt -ss My “AzureMgmt.cer” . A continuación debemos instalar localmente el certificado generado en la ubicación “Personal”.

Registraremos el certificado en Azure entrando a la página de administración de Azure y seleccionándolo desde “Management Certificates”. Si aún siguiera dando errores debemos comprobar que al navegar desde IEXplorer a una url del tipo “https://management.core.windows.net/{SuscriptionID}/services/storageservices” accedemos correctamente y disponemos de “Storage Account”.

imageimageimageimageimage

 

Una vez finalizado el proceso de registro, continuamos con el test hasta finalizarlo. Al completarse crearemos un report del test Seleccionando la opción “Report”. Esta opción nos creará un paquete de test que deberemos subir al portal de Microsoft Platform Ready. Entre los datos que nos solicitará tendremos que indicar el “Application ID” que obtendremos desde el portal Microsoft Platform Ready en la opción “Prueba de mis aplicaciones”.

Cuando se haya subido el paquete de test, se generará un job de análisis, una vez completado ya podremos descargar el logotipo Powered by Windows Azure.