• Like
  • Save
Aplicaciones Autohosted de SharePoint: combinando Azure y Colaboración
Upcoming SlideShare
Loading in...5
×
 

Aplicaciones Autohosted de SharePoint: combinando Azure y Colaboración

on

  • 712 views

Presentación del WebCast Aplicaciones Autohosted de SharePoint: combinando Azure y Colaboración

Presentación del WebCast Aplicaciones Autohosted de SharePoint: combinando Azure y Colaboración

Statistics

Views

Total Views
712
Views on SlideShare
712
Embed Views
0

Actions

Likes
0
Downloads
19
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Enseñar NapaDemo1
  • This slide depicts some of the biggest differences between building SharePoint-Hosted & Cloud-Hosted apps.
  • Enseñar NapaDemo1
  • Developer builds SharePoint application and packages into a *.APP file.Deployment to SharePointSharePoint installs applicationIf SharePoint application contains Windows Azure components, SharePoint provisions the Azure appAs with #4, SharePoint can provision SQL Azure, run the DDL for schema creation & DML for loading initial data
  • User navigates to an application page in SharePoint that contains the installed apps. Upon clicking one app (A), the page reloads with the main content (B) area replaced with an SPFrame control (think of this as an enhanced IFrame).The content area (B) in the SharePoint page points to the homepage of the application that lives in Windows Azure. This application runs entirely within Windows Azure.The application can consist of a series of multiple ASPX pages as an Azure Web Role or Azure MVC Web Role.The Windows Azure application can call back to SharePoint using the enhanced Client Object Model (CSOM) or using the new OData services in SharePoint Server 2013. This is useful when accessing data in SharePoint lists or other SharePoint interactions are necessary.The Windows Azure application can also utilize SQL Azure for custom data that is used exclusively by the application.The Windows Azure application can also call other external services or resources available over the wire (C) that are not available in SharePoint or in Windows Azure. This could be used to communicate back with on-premise LoB systems or other 3rd party hosted solutions.In addition the application can also utilize a bridge between the SPFrame hosting the application (B) and the application. This could be used to alter the SharePoint ribbon or other SharePoint UI components (status bar, notification messages, dialogs, etc).
  • SharePoint ListsGreat for SharePoint-hosted apps, but requires CAMLRequires an app webSQL AzurePackage app with SQL Package (.dacpac) or by referencing SQL Database projectSQL Azure components are provisioned invisibly when the app is installed by a tenantConnection information in available through specific APIs (both SqlConnection class and raw connection string)Others, but be careful with latency
  • Enseñar NapaDemo1
  • DACPAC has built in schema for upgrading schema
  • Enseñar NapaDemo1

Aplicaciones Autohosted de SharePoint: combinando Azure y Colaboración Aplicaciones Autohosted de SharePoint: combinando Azure y Colaboración Presentation Transcript

  • Aplicaciones Autohosted deSharePoint: combinando Azure y Colaboración Juan Carlos González Gustavo Velez MVP SharePoint Server MVP SharePoint Server http://geeks.ms/blogs/ciin http://www.gavd.net jgonzalez@gruposodercan.es gustavo@gavd.net @jcgm1978
  • Workshops & sesiones organizadas entracks paralelos: IT PRO, Negocio (BIZ) yDesarrollo(DEV) + Información:  www.iberiansharepointconference Madrid, 10th October .com 2013  @IberianSPConf  suges@Hotmail.es
  • Madrid, Barcelona y Valencia 26 y 27 de abril + Información en www.suges.es
  • Agenda Introducción Arquitectura Programación Tipos de aplicaciones
  • Evolución del desarrollo en SharePoint 2007 2010 2013 El código de la GAC se El código se ejecuta en un El código se ejecuta fuera de ejecuta en el mismo proceso especial SharePoint y aprovecha lasproceso (w3wp.ex) que la (SPUCWorkerProcess.exe) capacidades expuestas en _api Aplicación Web o bien llama a client.svc (CSOM)
  • Repaso a Tipos de Hosting Provider-Hosted App “Necesitas tu propia infraestructura de Sitio Tú Sitio de hosting” SharePoint Los desarrolladores tienen que aislar Hosting los tenantsCloud-based Apps Suscribirse a eventos Autohosted App (SPO) Azure remotos de SP Windows Azure + SQL Azure Sitio (desde Usar CSOM/REST + provisionadas de forma “invisible” OAuth para operar SharePoint WebDeploy mientras la app se instala con SharePoint , DacPac) SharePoint-hosted App Sitio Provisiona un subsitio aislado bajo un Padre sitio padre Reutiliza elementos web (lists, files, out-of-box web parts) App Web • No se permite código en el lado del servidor; usar JavaScript (de WSP)
  • Capacidades disponiblesCaracterísticas Service Level Modo de pago• Hosting IIS Compartido Agreement (SLA) • En estudio• BDs Azure SQL • Almacenamiento• Ciclo de vida de ¡Windows Azure Rules ! redundante aplicaciones transaccional • Recuperación de Desastres• Escalabilidad • Soporte a cliente compartido para problemas de Aplicaciones
  • Aplicaciones SharePoint- Hosted vs Cloud-Hosted SharePoint Hosted Cloud HostedApp Scope SharePoint Site Site or TenancyArchitecture Web Site Multi-Tenant AppDeveloper Skillset SharePoint + HTML/JS Full StackUI Technologies SharePoint + HTML/JS Any Web StackServer Code None AnyStorage Lists and Doc Libs AnyKey Limitations No Server Code Hosting Expertise Required
  • Repaso a Windows Azure:IaaS + PaaS + SaaS
  • Repaso a Windows Azure:Flexibilidad
  • Repaso a Windows Azure:Servicios http://www.windowsazure.com/en- us/documentation/?fb=es-es
  • Creación deAplicaciones conVisual Studio 2012
  • Explicación de la demo (Debugging) Servidor Desarrollo Azure Otros Webs SQL Office 365 Solución: Otros - Proyecto de SharePoint Share - Proyecto Web aspx Point Word Excel
  • Explicación de la demo (Publicación) Servidor Desarrollo Azure Otros Webs SQL Office 365 Proyecto de SharePoint Otros Share + Proyecto Web aspx Point = archivo .app Word Excel
  • 3rd Party Services Web Server Host Server APIsArquitectura SharePoint
  • Arquitectura Los componentes externos de la aplicación:  Se instalan de forma automática cuando la App se instala:  No es necesario crear lógica de instalación  Se despliegan en Azure: Azure Web Sites & SQL Azure Cada instancia de la App está aislada de otras instancias A nivel de tecnologías:  Sitios web y aplicaciones web ASP.NET  Componente de BD: sólo SQL Azure
  • Arquitectura Los tenants de SharePoint Online tiene asociado:  Windows Azure Web Sites  Una cuenta oculta de SQL Azure No es necesario registrar la aplicación con un STS (Secure Store Server) qué cumpla OAuth:  Lo hace automáticamente SharePoint Online por el desarrollador  Se utiliza ACS
  • Ciclo de Vida de una AppTenant ATenant B
  • Proceso de desarrollo ydespliegue 1. El desarrollador crea un paquete de aplicación de SharePoint (*.APP) 2. Se despliega la aplicación a SharePoint Online: – (vía Marketplace) – (vía Catálogo de Aplicaciones) 3. SharePoint Online instala la aplicación 4. SharePoint provisiona componentes de Windows Azure 5. SharePoint provisiona las BD de SQL Azure, ejecuta los scripts para crear los esquemas y los datos de partida necesarios
  • Ejecución de una aplicación(perspectiva usuario) 1. El usuario hace clic en la App (AP); SharePoint carga la página de la aplicación (B) 2. El área de contenidos (B) carga la página de Windows Azure 3. La aplicación en Azure ejecuta la aplicación web 4. La aplicación de Azure puede interactuar con SharePoint a través del CSOM o bien la API REST 5. La aplicación de Azure puede utilizar BDs SQL Azure 6. La aplicación de Azure puede interactuar con servicios externis u otros recursos disponibles en la red (C) 7. La aplicación de Azure puede interactuar con el sitio que hospeda la aplicación
  • Opciones deAlmacenamiento Listas de SharePoint:  Requieren el uso de CAML para interactuar  Se puede necesitar un sitio (SPWeb) para la App SQL Azure:  Empaquetar junto con la App el paquete SQL (.dacpac) o bien referenciar un proyecto de BD  Los componentes de SQL Azure se provisionan de forma transparente (e invisible) cuando la aplicación se instala  La conexión a la BD se realiza a través de APIS especificas (clase SqlConnection) Otras: ¡Cuidado con la latencia!
  • Permisos de aplicaciones
  • Permisos de aplicaciones Se configuran en el manifiesto de la aplicación  Los desarrolladores pueden especificar los permisos que la aplicación necesita para ejecutarse Son solicitados durante la instalación de la aplicación:  Conceder permisos es una operación de “todo” o “nada”: No es posible elegir que permisos conceder para una petición El usuario que ejecuta la aplicación es quien los concede:  Sólo se pueden conceder aquellos permisos que se tienen ACS (Azure Access Control Service) juega el rol de servidor de autorización:  Almacena la información básica sobre la App y proporciona tokens de acceso a las aplicaciones para llamar a las APIs de SharePoint
  • Modelo de uso ylicenciamiento Cuenta de Azure propiedad de Microsoft:  Todas las aplicaciones Autohosted se provisionan en una cuenta propiedad de Microsoft a la qué solo Microsoft tiene acceso (de momento) El licenciamiento es a través del Tenant de Office 365:  Se supone que los costes de hosting en Azure serán pasados a través del Tenant de Office 365, el desarrollador no tiene que pagar nada Catálogo de aplicaciones:  Para personalizaciones específicas a una organización Office Store:  Aplicaciones Autohosted no soportadas por el momento
  • Tecnologías Código .NET en todo caso Para qué las aplicaciones interactúen con SharePoint (acceso a datos, crear listas, editar permisos, etc):  CSOM + API REST Para establecer que qué puede hacer la aplicación:  Conceder los permisos adecuados  Uso del modelo de autorización de OAuth
  • Herramientas Visual Studio 2012 (Con las tools instaladas) Visual Studio LightSwitch Microsoft Access 2013 …y NAPA (de momento para SharePoint-Hosted)
  • Proceso de desarrollo típico Crear proyecto(s) de Windows Azure:  Sitios Web de Windows Azure  Aplicaciones Web ASP.NET MVC Craer BDs de SQL Azure Crear una aplicación de SharePoint usando la plantilla de Visual Studio Actualizar el manifiesto de la aplicación:  Metadatos  Página principal
  • Chrome Control, dar estilo auna Aplicación Permite utilizar el estilo del sitio host en la aplicación:  Una librería JavaScript en la App devuelve la hoja de estilos de SharePoint para aplicaciones  El handler http://<sharepointsite>/_layouts/15/defaultcss.ashx es quien devuelve esa hoja de estilos:  La hoja de estilos es corev15app.css La hoja de estilos se aplica a las páginas de la aplicación También permite añadir nodos de navegación personalizados:  Enlaces a otras páginas  Enlaces a archivos de ayuda
  • Chrome Control, dar estilo auna Aplicación
  • Creación deAplicaciones conLightSwitch 2012
  • Explicación de la demo (Debugging) Servidor Desarrollo Azure Otros Webs SQL Office 365 Solución: Otros - Proyecto de SharePoint Share - Proyecto Web JS Point Word - Proyecto Base de Datos Excel
  • Explicación de la demo (Publicación) Servidor Desarrollo Azure Otros Webs SQL Office 365 Proyecto de SharePoint Otros Share + Proyecto Web JS Point + Proyecto Base de Datos Word = archivo .app Excel
  • Crear una App Autohosted implica SharePoint Package Web App & Database• Use Visual Studio SharePoint App • Add Web app to solution: Project • Azure Web site support• Focus on app entry points: • Add SQL Azure database: • Custom Actions • *.DACPAC required to create the • Client Web Parts SQL Azure DB• Carefully consider AppWeb context: • Provide data script to seed data • No app webs for tenant scoped apps • Debug locally• Debug/test locally or on developer site
  • Despliegue de una aplicación Autohosted Web App & SharePoint Package Database• OAuth config & SQL Azure • Packaged in SharePoint package connection string auto-generated • Auto-provisioned & deployed to• Use ~remoteAppUrl token for Windows Azure references to web app URL• Publish app package to: • Marketplace • Corporate Catalog
  • Despliegue y depuración Para testear, en la medida de lo posible, se recomienda desplegar el proyecto de Windows Azure directamente:  Permite la depuración directa de proyectos web  Si se interactúa con SharePoint, esta opción no es viable Cuando se ha acabado de depurar, empaquetar la aplicación completa y desplegar a SharePoint Online:  SharePoint Online se encarga de provisionar todos los componentes cuando se instala la aplicación
  • Depuración Mediante Windows Azure Service Bus y configurarlo en las propiedades del proyecto de la aplicación
  • Experiecias disponibles Página completa (Inmersivas):  Planificación/Programación de eventos Elementos de aplicación (App Parts):  Widget: Información del tiempo, de la bolsa, … Acciones personalizadas  Navegaciones, acciones a nivel de elemento, …
  • Otros IDE/Depuración de Apps
  • Referencias Creación de aplicaciones Autohosted:  http://msdn.microsoft.com/en-us/library/fp179885.aspx Ejemplo de aplicación Autohosted:  http://msdn.microsoft.com/en-us/library/fp179902.aspx Uso del Chrome Control:  http://geeks.ms/blogs/santypr/archive/2013/02/08/chrome-de-sharepoint- en-una-sharepoint-app.aspx  http://msdn.microsoft.com/en-us/library/fp179916.aspx  http://msdn.microsoft.com/en-us/library/jj220046.aspx#UXGuide_Styling Depuración de aplicaciones Autohosted:  http://geeks.ms/blogs/ciin/archive/2013/04/16/sharepoint-2013-como- depurar-una-aplicaci-243-n-de-tipo-autohosted.aspx
  • Descuentos Campus MVP10% de descuentoen todos nuestros cursos y libros hasta el 31 dediciembreIntroduce el cupón PECIIN12SN al realizar tucompraen nuestra tienda online.
  • Prueba SharePoint a tope CloudShare:  http://www.cloudshare.com/  Disponen de varias plantillas de SharePoint 2013 listas para probar 
  • Nos vemos en los foros Foro de desarrollo:  http://social.msdn.microsoft.com/Forums/es-es/mossdeves/threads Foro de IT  http://social.technet.microsoft.com/Forums/es-ES/mosses/threads Foro de Office 365:  http://community.office365.com/es-es/default.aspx
  • GRACIAS POR SU ATENCIÓN