Office 365: Uso del CSOM de SharePoint con el sitio de un Grupo de Office 365 (I)!
Como sabéis, cada Grupo de Office 365 que creemos en nuestra tenant cuenta con una Colección de Sitios de SharePoint Online (SPO) en la que poder almacenar información. Esa Colección de Sitios, que tiene una Url de la forma https://<DominioOffice365>.sharepoint.com/sites/<NombreGrupoOffice365> está limitada en cuanto a lo que se puede hacer a través de la interfaz de usuario, pero puede ser accedida mediante el modelo de objetos en cliente (CSOM) para SPO y su API REST como veremos en este post y siguientes de la serie. Basándome en scripts ya publicados tanto en mi repositorio de GitHub como en la Galería de Scripts de Technet en este primer post os voy a demostrar el uso del CSOM y la API REST con el sitio de un Grupo de Office 365:
-
En primer lugar, mediante el uso de la API REST y CSOM y haciendo uso del siguiente script, podremos obtener las Listas y Bibliotecas del Sitio asociado al Grupo: How to Get all the Lists in a SharePoint Online Site using REST. Tras ejecutar el script contra el sitio de un Grupo, obtendremos las listas y bibliotecas del sitio:
-
En segundo lugar, vamos a acceder a la información de los usuarios y grupos del sitio haciendo uso del siguiente script: How to get all the users in a SharePoint Group in a SharePoint Online Site. Como veis en el resultado de ejecutar el script, el Grupo de Office 365 se añade al Grupo de SharePoint de Propietarios del sitio:
-
En tercer lugar, vamos a ver como añadir un usuario a un Grupo del Sitio asociado al Grupo de Office 365 haciendo uso del script: How to add users to a SharePoint Group in SharePoint Online. Si ejecutamos el script, veremos que el usuario se añade sin problemas, algo que podremos comprobar ejecutando de nuevo How to get all the users in a SharePoint Group in a SharePoint Online Site
Lo interesante del script anterior es que hemos dado acceso a un usuario que no forma parte del Grupo de Office 365, pero que tiene acceso al sitio asociado como podéis ver en la siguiente captura de pantalla: