SharePoint 2013: Concepto de autorización en el uso de aplicaciones!

Otra de las grandes novedades de SharePoint 2013 es que introduce el concepto autorización a través de implementar el protocolo OAuth a la hora de permitir que las aplicaciones del nuevo modelo de aplicaciones tengan permiso o no para interactuar con el despliegue de SharePoint dónde se van a instalar. Básicamente el mecanismo de autorización de SharePoint 2013 permite que los usuarios autoricen a una aplicación a actuar en su nombre sin compartir su usuario y contraseña:

  • Por ejemplo: permitir que los usuarios compartan recursos privados o datos que residen en un sito en otro sitio: lista de contactos, docs, etc
  • La clave es que los usuarios no tienen que proporcionar las credenciales cada momento.

OAuth en SharePoint 2013 proporciona “tokens” de acceso, no de “sign-in” y sólo soporta WS-Fed.

¿Cómo funciona OAuth en SharePoint? Pues de acuerdo a las siguientes puntos

  • Permite a los usuarios autorizar a SharePoint para proporcionar tokens de acceso a las aplicaciones.
  • Estos tokens se pueden usar para devolver datos de SharePoint.
  • Cada token permite acceder:
    • A un sitio específico.
    • A un recurso especifico (documentos en una carpeta).
  • Y este acceso tiene una duración definida.

Como hemos comentado, el mecanismo de autorización se utiliza a la hora de indicar si una aplicación tiene permisos o no para interactuar con SharePoint. ¿Cómos se asignan los permisos a la aplicación?

  • Durante el proceso de instalación.
  • Los permisos que necesita la aplicación se definen en el archivo de manifiesto de la misma
  • Es el usuario quien “confía” en la aplicación y asegura qué los permisos se asignen a la aplicación mientras se instala.
  • Los usuarios sólo pueden proporcionar los permisos que ellos tienen.

En cuanto a ámbitos de permisos para aplicaciones:

  • Se definen en el manifiesto de la aplicación (= que los permisos)
  • Indican en qué nivel de la jerarquía de SharePoint la aplicación está solicitando permisos:.
    • SPSite.
    • SPWeb.
    • SPList.
    • Tenancy.
    • Otros para consultas de búsqueda, acceso a los perfiles de usuario, acceso a los datos de una taxonomía, …

Los permisos que se garantizan en un cierto ámbito, aplican en todos sus “hijos”…y me explico, los permisos que se den en un ámbito de tipo SPSite aplicarán en todos los subsitios que se definan por debajo, así como en listas y elementos de listas.

Referencias

Publicado por

Juan Carlos González

Juan Carlos es Ingeniero de Telecomunicaciones por la Universidad de Valladolid y Diplomado en Ciencias Empresariales por la Universidad Oberta de Catalunya (UOC). Cuenta con más de 12 años de experiencia en tecnologías y plataformas de Microsoft diversas (SQL Server, Visual Studio, .NET Framework, etc.), aunque su trabajo diario gira en torno a SharePoint & Office 365. Juan Carlos es MVP de Office Servers & Services desde 2015 (anteriormente fue reconocido por Microsoft como MVP de Office 365 y MVP de SharePoint Server desde 2008 hasta 2015), coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador y coordinador del Grupo de Usuarios de SharePoint de España (SUGES, www.suges.es), así como co-director de la revista gratuita en castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la fecha, ha publicado 8 libros sobre SharePoint & Office 365 y varios artículos en castellano y en inglés sobre ambas plataformas.

6 comentarios en “SharePoint 2013: Concepto de autorización en el uso de aplicaciones!”

  1. Para acceder a servicios web desde el workflow (SharePoint Designer) ¿debemos realizar algún tipo de autorización de aplicaciones ?
    Desde LLamar HTTP ….. pongo servicios web que en el browser me funcionan, pero en cambio en el flujo de trabajo de SharePoint designer no me funcionan, siempre obtengo código Unauthorized.

    GRACIAS

  2. Hola,
    Para nada…el problema lo estás teniendo con el usuario que ejecuta el workflow que puede ser que no tenga permisos para acceder a los servicios.

    Saludos

  3. Hola, gracias por tu respuesta, esto me cierra un mundo de complejidad para mi objetivo de trabajo.

    Si ejecuto los servicios desde un navegador con este mismo usuario no tengo problemas.

    Es necesario autorizar específicamente al usuario para utilizar los servicios web ?

    Si es así ¿cómo se hace?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *