ESPC15 Th30 Microsoft Office 365 Groups Deep Dive

Preview:

Citation preview

Office 365 Groups Deep diveKnut Relbe-Moe, Chief Technical Architect Knowledge Factory

Knut Relbe-Moe

My Experience:SharePoint evangelist, mentor, speakerOld developer, turned Architect / ITProHave worked with SharePoint since the 2003 version.Worked with several clients upgrading their solution from 2007/2010 to 2013.Works as a Lead Architect and advisor creating SharePoint Farm

architecture/infrastructure on many projects. With up to 25.000 users.Worked with automating the installation and configuration of SharePoint.

Chief Technical ArchitectKnowledge Factory, Oslo, NorwayOffice Server & Services MVPMigration ExpertEducator for GlasspaperNintex Virtual Technical Evangelist

Knut.Relbe-moe@knowledgefactory.no

http://www.sharepointblog.no

@shareptkarm

THANK YOUChristophe Fiessinger and Microsfot for some of the slides

THE WORLD HAS CHANGED

THE RISE OF DYNAMIC TEAMS

MODERN COLLABORATIONINTELLIGENT FABRIC

PERSONALIZED INSIGHT

Introducing Office 365 Groups

Brings together people, information, and apps across Office 365, to enable better communication and collaboration.

Groups building blocks

Azure Active Directory

Apps

Skyp

e

…Ou

tlook

OneD

rive

Cale

ndar

OneN

ote

Yam

mer

Dyna

mics

CRM

Delv

e

Office 365 Groups

Office 365 Experiences available to all of you!OUTLOOK CONVERSATIONS FILES

CALENDAR PEOPLE SKYPE

NOTEBOOK

Introducing Office 365 Groups

Architecture Office 365 Groups

One group system across Office 365One identityAzure Active Directory (AAD) is the master for group identity and membership across Office 365 (Exchange, SharePoint, etc.)

Federated resourcesO365 services extend with their data(e.g., conversations stored in Exchange mailbox & documents stored in OneDrive for a group)

Loose couplingServices notify each other of changes to a group (e.g., creation, deletion, updates)Using sync from AAD to Exchange Online AD and SharePoint Online AD they achieve reliability if they miss notifications

SharePoint

SharePoint Online AD Documents

OneNote

OneDrive for business

Additional workloads

Workload scenarios

Workload resourcesLocal

directory

Exchange

Conversations Calendar

Group mailboxExchange

Online AD

IdentityResource URLsOwnersMembers

AAD

Group identity

Group creation flow Melissa creates a group in Outlook

EXOCreate Group

MSODSNew group

Create via AAD Graph

Azure Active Directory

Exchange Online SharePoint Online

EXO

Group creation flow EXO creates a local group

EXOCreate Group

MSODSNew group

Create via AAD Graph

Azure Active Directory

Exchange Online AD

Local create

Newgroup

Exchange Online SharePoint Online

EXO

Group creation flow EXO notifies SPO, which creates a local group

EXOCreate Group

MSODSNew group

Create via AAD Graph

Azure Active Directory

Exchange Online AD

Local create

Newgroup

Exchange Online SharePoint Online

EXO

SharePoint Online AD

SPO

Newgroup

Notification

Local create

EXOAdd

Members

MSODSUpdate group

Azure Active Directory

Exchange Online AD

Updategroup

Exchange Online SharePoint Online

EXO

SharePoint Online AD

SPO

Updategroup

Group management flow FwdSync broadcasts changes

FwdSync FwdSync

Update Group

via AAD Graph

Group mail sync for hybrid tenantsMelissa creates group and invites Dan

O365Service.Contoso.com

On-premContoso.com

AAD

AD

EXO

EX

Melissa@Contoso.com

Dan@Contoso.com

QR1plans@Service.Contoso.com

WelcomeGAL

GALQR1plans

Local nickname cacheQR1plans@Service.Contoso.c

om

O365Service.Contoso.com

On-premContoso.com

AAD

AD

EXO

EX

Melissa@Contoso.com

Dan@Contoso.com

QR1plans@Service.Contoso.com

‘Agenda’GAL

GALQR1plans

Post ‘Agenda’

‘Agenda’

Local nickname cacheQR1plans@Service.Contoso.c

om

Group mail sync for hybrid tenantsDan is autosubscribed

O365Service.Contoso.com

On-premContoso.com

AAD

AD

EXO

EX

Melissa@Contoso.com

Dan@Contoso.com

QR1plans@Service.Contoso.com

‘RE: Agenda’GAL

GALQR1plans

‘RE: Agenda’

Local nickname cacheQR1plans@Service.Contoso.c

om

Group mail sync for hybrid tenantsDan sends email to the group

Group mail sync for hybrid tenantsAAD connect sync back O365 objects

GALGALQR1plans

O365Service.Contoso.com

On-premContoso.com

AAD

AD

EXO

EX

Melissa@Contoso.com

Dan@Contoso.com

QR1plans@Service.Contoso.com

GALQR1plans

DL objectTarget: QR1plans@Service.Contoso.com

AADConnect

Group management UXIntegrated with in the O365 Admin CenterSingle-click access from the left nav

Explore the groups in your tenantEasy access to all groups in your tenantBrowse/search

Manage groups in one placeEdit group properties in placeIntegrated member/owner management

Staying up-to-date with Groups in your tenant

Scripting Group lifecycle

CMDLETS

CmdletsFull orchestrationAll cmdlets execute against Azure AD as primarySynchronous notification/update in Exchange/OneDriveAvailable to tenant admins

*UnifiedGroupCreate, edit, and deleteManage single-value properties available on the Group object

*UnifiedGroupLinksManage members, owners, and subscriber list

Group CMDLETS#Allow remote sessionsset-executionpolicy unrestricted #Get usercredentials$userCredential = Get-Credential#Open Powershell session$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession $session#Get help about group cmdletshelp unifiedgroup

Group CMDLETS#Getting a list of all groupsget-unifiedgroup

#Getting a list of specified groupget-unifiedgroup -identity salesteam

#Getting all members of a groupget-unifiedgrouplinks -identity salesteam -linktype Members

#To create a group with minimal parameters, just use the DisplayName parameterNew-UnifiedGroup –DisplayName "PowerShell Group 1"

Add-UnifiedGroupLinks groupalias –Links knut.Relbe-moe@knowledgefactory.com –LinkType Member

Group CMDLETS#To add a new user to the owners group, first add them as a member and then add them as an owner.Add-UnifiedGroupLinks groupalias –Links user@domain.com –LinkType MemberAdd-UnifiedGroupLinks groupalias –Links user@domain.com –LinkType Owner

#Getting the members of a groupGet-UnifiedGroupLinks –Identity groupalias –LinkType Members

#Removing a user from a groupRemove-UnifiedGroupLinks groupalias –Links user@domain.com –LinkType Member

# To remove an owner from the group, you will first have to remove he or she from the LinkType Owner.Remove-UnifiedGroupLinks groupalias –Links user@domain.com –LinkType OwnerRemove-UnifiedGroupLinks groupalias –Links user@domain.com –LinkType Member

#Removing a group Remove-UnifiedGroup groupalias

Specifying a policy restricting groupsAssign the policy to a set of users

Attempt to create a group

Group creation permissions

Disable group creationNew-OWAMailboxPolicy -Name "DisableGroups"

Set-OWAMailboxPolicy -Identity "DisableGroups" -GroupCreationEnabled $false

Set-CASMailbox -Identitiy knut.Relbe-moe@knowledgefactory.com -OwaMailboxPolicy "DisableGroups"

Policy controlsNaming conventionsSet on display name during create/changeBlocked word list, pre-/post-fix based on AAD attributes or fixed textSame policy for DL and groupsIT admins can override

Group creation permissionsControl groups create UI in OWA and OLK for certain or all users through OWA policyDoes not prevent users from using groupsIT can still create groups (managed scenarios)

Managing groupsThrough admin UIO365 admin center (not EAC)AAD control panel

Scripted/automatedCRUD cmdlets:

*-UnifiedGroup to manage group*-UnifiedGroupLinks to manage owners, members, subscribers

Policy controlNaming policyCreation restriction

Extensibility Office 365 Groups

Office 365 platform overview

Your App

Office 365 unified API (preview)

https://graph.microsoft.com/

/EVENTS/CONVERSATIONS

/FILES

MANAGEMENT

https://graph.microsoft.com/beta/myorganization/groups?$filter=groupType+eq+'Unified'

Building your appRegister app in Azure portalNativeWeb appSingle page app

Configure app permissionsGroups.Read.AllGroups.ReadWrite.All

Get token using OAuth2.0 flowUse OpenID Connect for SSOBuild your code using O365 unified API

Groups management (preview)Entities, collections, and actions

Sampleshttps://graph.microsoft.com/beta/contoso.com/groups/{id}/https://graph.microsoft.com/beta/contoso.com/groups/{id}/AddFavorite

CollectionAction

ENTITY COLLECTION ACTIONSGroup Groups CRUD

SubscribeByMail, UnsubscribeMyMail, AddFavorite, RemoveFavorite, ResetUnseenCount

User/Me Users JoinedGroups

Groups content: ConversationsEntities, collections, and actions

Sampleshttps://graph.microsoft.com/beta/contoso.com/groups/{id}/conversationshttps://graph.microsoft.com/beta/contoso.com/groups/{id}/threads/{id}/reply

Blah lol

ttylENTITY COLLECTION ACTIONSConversation Conversations Create, read, and deleteThread Threads ReplyPost Posts Reply, forwardAttachment Attachments CRUD

Groups content: Calendar Entities, collections, and actions

Sampleshttps://graph.microsoft.com/beta/contoso.com/groups/{id}/events../calendarview?startdatetime=2015-04-01 & enddatetime=2015-04-30

Collection

No client-side recurrence expansion required

ENTITY COLLECTION ACTIONSCalendar  ReadEvent Events CRUDCalendar view N/A ReadAttachment Attachments CRUD

Groups content: FilesEntities, collections, and actions

Sampleshttps://graph.microsoft.com/beta/contoso.com/groups/{id}/fileshttps://graph.microsoft.com/beta/contoso.com/groups/{id}/files/{id}/

ENTITY COLLECTION ACTIONSFile Files CRUD, upload, downloadFolder CRUD, enumerate children

Common content queriesSCENARIO URLGet top 10 conversations sorted by LastDeliveryTime

/group/{id}/conversations?$top=10&$orderby=LastDeliveryTime

Get the next 10 conversations /group/{id}/conversations?$top=10&$skip=10

Get selected properties on events starting after a particular Date/Time

/group/{id}/events?$top=10&$select=Subject,Start,End&$filter=Start ge 2014-09-22

Get selected properties on conversation threads

/groups/{id}/conversations/{id}/threads/{id}/posts?$select=body

Get files where the name starts with “c”

/group/{id}/files?$filter=startswith(name,+'c')

Get selected properties on files /group/{id}/files?$select=dateTimeCreated

Next stepsSign-up for Office 365

Use Office 365 groups

Give Microsoft feedback

Join the conversation!Share tips and best

practices with other Office 365 expertshttp://aka.ms/

office365network

Now you are ready to play around with Power BI If not you can always call me.

Questions?• Now or later

THANK YOU

Recommended