Skype for Business Online con PowerShell

Skype for Business es uno de los productos de Microsoft que ha tenido mayor aceptación en el mercado gracias a su facilidad de uso, sumado a las grandes características que ofrece como solución de comunicaciones en el mundo empresarial. A su vez, gracias a Office 365, contamos con una posibilidad de adopción muy sencilla que permite realizar una implementación de forma muy veloz. Por ello es que hoy vamos a hablar de cómo aprovechar mejor esta grandiosa solución de comunicaciones unificadas en la que voy a compartir como administrar Skype for Business Online con PowerShell en pocas líneas de código.

Conectarnos a nuestra suscripción

Skype for Business Online, es uno de los servicios que ofrece Office 365 dentro de su suite de soluciones. Es por ello que necesitamos de PowerShell para poder administrar esta solución. Si bien existe el portal de administración, las posibilidades que ofrece son limitadas.

Para comenzar a trabajar es necesario contar con el módulo llamado Skype for Business Online Connector. La instalación es muy sencilla; simplemente avanzar en el asistente y listo.

En segundo lugar vamos a ejecutar desde una consola de PowerShell:

Import-Module LyncOnlineConnector
$userCredential = Get-Credential
$sfbSession = New-CsOnlineSession -Credential $userCredential
Import-PSSession $sfbSession

Inicio de sesión

Es importante cerrar y volver a abrir la consola luego de la instalación del módulo, ya que puede generar un error al intentar importar el módulo.

Ingresar las credenciales de nuestra suscripción para poder realizar la conexión de forma satisfactoria.

Obteniendo información básica

El primer cmdlet que vamos a ver es Get-CsOnlineUser, que básicamente lo que hace es desplegar información sobre un usuario o usuarios habilitados. Por ejemplo si queremos obtener información del usuario Victor Silva podemos ejecutar lo siguiente:

Get-CsOnlineUser -Identity "Victor Silva"

Y que podemos obtener de este cmdlet, información como por ejemplo cual es el la dirección sip, números de teléfono asociados, a que servidores se registra y más. Para obtener la dirección sip ejecutamos:

Get-CsOnlineUser -Identity "Victor Silva" | select SipAddress

Para obtener información sobre la organización, como por ejemplo; el estado de configuración de la comunicación externa, es necesario utilizar el cmdlet Get-CsExternalAccessPolicy, de la siguiente forma:

Get-CsExternalAccessPolicy -Identity "FederationAndPICDefault"

En donde se define la identidad FederationAndPICDefault que permite identificar en que estado se encuentra cada feature como el acceso externo a la organización o la comunicación con usuarios federados:

Skype for Business Online con PowerShell

Políticas de usuarios

Las políticas son un conjunto de parámetros que permiten a los usuarios hacer o no hacer cosas dentro de Skype for Business. En caso de que no existan políticas asignadas a usuarios de forma personalizada, la política global es la que se aplica.

Para listar las políticas existentes en Skype for Business Online con PowerShell, usamos el cmdlet:

Get-CsConferencingPolicy | select Identity

Get-CsConferencingPolicy

¿Y que sucede si necesitamos crear una política nosotros? Para ello utilizamos New-CsConferencingPolicy. Como ejemplo vamos a tomar el requerimiento que un cliente hace unos días me solicitó: Crear una política para que los usuarios no puedan compartir su escritorio. Para cumplir con la solicitud anterior vamos a ejecutar:

New-CsConferencingPolicy -Identity DeshabilitarCompartirEscritorio -EnableAppDesktopSharing None

En donde Identity es el nombre que le vamos a dar a nuestra política y la feature EnableAppDesktopSharing es la que vamos a deshabilitar. Así de simple. Ahora nos resta aplicar la política a un usuario en particular:

Get-CsOnlineUser Victor Silva | Grant-CsConferencingPolicy -PolicyName DeshabilitarCompartirEscritorio

Y listo! El usuario Victor Silva no va a poder compartir escritorio al utilizar Skype for Business Online. Para comprobar si se aplicó correctamente la política:

Get-CsConferencingPolicy -ApplicableTo "Victor Silva"

Comprobar política de Skype for Business Online con PowerShell

Happy scripting!

Comments