USERS IN THE CLOUD By Michael Doyle SharePoint Friday Honolulu.

Slides:



Advertisements
Similar presentations
Services Course Windows Live SkyDrive Participant Guide.
Advertisements

Learn the techniques to create a SharePoint 2010 web site from an existing branded web site.
Kentico CMS 5.5 R2 What’s New. Highlights Intranet Solution Document management package – WebDAV support – Project & task management – Document libraries.
Customizing the MOSS 2007 Search Results November 2007 Rafael Perez.
0 Leveraging External Data In SharePoint John Ramminger.
02 | Managing Users, Groups, and Licenses Anthony Steven | Principal Technologist, Content Master Martin Coetzer | Portfolio Architect, Microsoft.
3 Suite of Office 365 admin tools Out of the box solution for the Office 365 admin lifecycle.
User Profiles: I Didn’t Know I Could Do That!! Stacy L. Deere-Strole Focal Point Solutions, LLC.
Sharepoint Portal Server Basics. Introduction Sharepoint server belongs to Microsoft family of servers Integrated suite of server capabilities Hosted.
Enterprise Search. Search Architecture Configuring Crawl Processes Advanced Crawl Administration Configuring Query Processes Implementing People Search.
To the Cloud, from the Trenches: Best Practices for Migrating to Microsoft Office 365 Jorge R. Diaz Microsoft MVP | Exchange Server Architect Planet Technologies.
Service Overview & Offering Features & Requirements Office 365 Administration | Portals & PowerShell Partner Opportunity.
INTRANET DESIGN By Michael Doyle SharePoint Friday Honolulu.
INTRANETS: THE SUCCESSES AND THE FAILURES By Michael Doyle.
CONFIGURING WINDOWS SERVER MIS 424 Professor Sandvig.
OM. Brad Gall Senior Consultant
First Look Clinic: What’s New for IT Professionals in Microsoft® SharePoint® Server 2013 Sayed Ali (MCTS, MCITP, MCT, MCSA, MCSE )
1 Working with MS SQL Server. 2 Objectives You will be able to Use Visual Studio for GUI based interactive access to a Microsoft SQL Server database.
Phonegap Bridge – Telephony CIS 136 Building Mobile Apps 1.
©Kwan Sai Kit, All Rights Reserved Windows Small Business Server 2003 Features.
SharePoint 2010 Development Environment A Guide to Setup SharePoint 2010 Development Environment on Windows 7 Machine.
Julien “Superman” Stroheker and Nicolas “Batman” Georgeault Negotium
1 Working with MS SQL Server Textbook Chapter 14.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 Working with MSSQL Server Code:G0-C# Version: 1.0 Author: Pham Trung Hai CTD.
Integrating NAV 2013R2 and Office 365 Office 365 Single Sign-on NAV as an app NAV online document store.
Searching Business Data with MOSS 2007 Enterprise Search Presenter: Corey Roth Enterprise Consultant Stonebridge Blog:
CSCI 6962: Server-side Design and Programming Database Manipulation in ASP.
ASP.NET The Clock Project. The ASP.NET Clock Project The ASP.NET Clock Project is the topic of Chapter 23. By completing the clock project, you will learn.
WaveMaker Visual AJAX Studio 4.0 Training Basics: Building Your First Application Binding Basics.
0 SharePoint Search 2013 Rafael de la Cruz SharePoint Developer Seneca Resources twitter.com/delacruz_rafael
Module 1: Implementing Active Directory ® Domain Services.
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Profiles and Active Directory Overview User profiles –Import from Active Directory –Creating.
Version 2.0 for Office 365. Day 1 Administering Office 365 Day 2 Administering Office 365 Office 365 Overview & InfrastructureAdministering Lync Online.
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Search Overview Search Features: WSS and Office Search Architecture Content Sources and.
Purpose Intended Audience and Presenter Contents Proposed Presentation Length Intended audience is all distributor partners and VARs This would be presented.
NMD202 Web Scripting Week5. What we will cover today PHP & MySQL Displaying Dynamic Pages Exercises Modifying Data PHP Exercises Assignment 1.
Intro to Datazen.
A Mobile Library Management System Advisor: Dr. Shen Student: Ananta Gampaa November 8 th,2005.
Office 365: SharePoint Online 31 May | SharePoint Saturday Calgary – 31 MAY 2014 About Me – Jason Kaczor
Created by Name 2013/10/01 ESKER EXCHANGE CONNECTOR TRAINING PART 1 VERSION WITH DELIVERYWARE on EDW6.0 EXCHANGE.
Microsoft ® Official Course Module 9 Working with Business Connectivity Services.
Developer Exam Preparation Thom Robbins Bryan Soltis
Azure AD B2B SHAREPOINT ONLINE COLLABORATION WITH EXTERNAL PARTNERS MADE SIMPLE Jose L Arbelaez – Enterprise Architect.
Leveraging SharePoint Search In SharePoint 2013 Jameson Bozeman.
Managing Office 365 Identities and Requirements.
This image was selected is show placement and can be replaced with another full slide image. The Amazing World of PowerShell with SharePoint Online (and.
Start-SPPowerShell – Introduction to PowerShell for SharePoint Admins and Developers Paul BAker.
ICE Integrated Cloud Environment Cloud Scanning and Mobile Printing
CS320 Web and Internet Programming SQL and MySQL
Automate Custom Solutions Deployment on Office 365 and Azure
Microsoft - Managing Office 365 Identities and Requirements
CONTENT MANAGEMENT SYSTEM CSIR-NISCAIR, New Delhi
Jon Galloway | Tech Evangelist Christopher Harrison | Head Geek
Introduction to Programming the WWW I
SharePoint Saturday Omaha April 2016
Multi-Farm, Cross-Continent SharePoint Architecture
PowerShell goodness 2017 Jeremy Sublett Composable Systems, LLC
Office 365 PowerShell Jeremy Sublett.
Hybrid Search Planning Implementation.
Hybrid Search Technical Guidance.
CRM 2016 Solutions and Package Deployer
CIS 136 Building Mobile Apps
SharePoint Online Hybrid – Configure Outbound Search
Adding your VUMC account to the Outlook App
Matthew Levy Azure AD B2B vs B2C Matthew Levy
Office 365 Development.
Office 365 Development.
CS3220 Web and Internet Programming SQL and MySQL
CS3220 Web and Internet Programming SQL and MySQL
Michelle Haarhues Keeping up with SSMS.
Presentation transcript:

USERS IN THE CLOUD By Michael Doyle SharePoint Friday Honolulu

WHO IS MICHAEL DOYLE? SharePoint Consultant Worked for EPA, Intel, Propoint, HCA, Deloitte, US Navy, CA State Lottery, Air Resources Board, Waggener Edstrom, Fedex, Dealertrack, Vanderbilt etc. Exam Ref: Customizing My Site (2010) Other Books SharePoint 2010 Inside Out SharePoint 2010 Inside Out Tale of Two Stones

KINDS OF USERS IN OFFICE 365? The core user in Admin in O365 SharePoint Users Exchange User

THE CORE O365 USER? Based on address Set number of attributes Use admin console or Azure PowerShell to modify

TYPES OF USERS

PROPERTIES OF A CORE USER User Principle Name Additional Address City Country Department Display Name Fax First Name Last Name Office Phone Number Postal Code Preferred Language State Street Address Title

ADMINISTRATION OF USERS Using the Admin UI in Office 365

USER DASHBOARD IN OFFICE 365

EDIT PROPERTIES

EDIT DETAILS

AZURE ACTIVE DIRECTORY MODULE Located at us/library/jj aspx#bkmk_installmodulehttps://msdn.microsoft.com/en- us/library/jj aspx#bkmk_installmodule Allows you to use PowerShell commands to manage users Can be controlled via code

SERVER FOR RUNNING CODE Windows 2008 or Windows 2012 SharePoint 2013 bits (no need to configure) Internet connection Visual Studio (free version works fine)

GETTING CONNECTED Connect-MsolService

COMMANDS TO MANAGE USERS Convert-MsolFederatedUser Get-MsolUser New-MsolUser Remove-MsolUser Restore-MsolUser  Set-MsolUser Set-MsolUser  Set-MsolUserPassword Set-MsolUserPassword  Set-MsolUserPrincipalName Set-MsolUserPrincipalName  Redo-MsolProvisionUser Redo-MsolProvisionUser

NEW-MSOLUSER New-MsolUser -DisplayName -UserPrincipalName [- Alternate Addresses ] [-BlockCredential ] [-City ] [- Country ] [-Department ] [-Fax ] [-FirstName ] [- ForceChangePassword ] [-ImmutableId ] [-LastName ] [- LicenseAssignment ] [-LicenseOptions ] [-MobilePhone ] [-Office ] [-Password ] [-PasswordNeverExpires ] [- PhoneNumber ] [-PostalCode ] [-PreferredLanguage ] [-State ] [-StreetAddress ] [-StrongPasswordRequired ] [-TenantId ] [-Title ] [-UsageLocation ] [ ] Example New-MsolUser -UserPrincipalName -UsageLocation US - ForceChangePassword $false -LicenseAssignment 'companyname:ENTERPRISEPACK' -Password ‘NewUserPassword'

SET-MSOLUSER Set-MsolUser [-Alternate Addresses ] [-BlockCredential ] [-City ] [-Country ] [-Department ] [- DisplayName ] [-Fax ] [-FirstName ] [-ImmutableId ] [-LastName ] [-MobilePhone ] [-ObjectId ] [- Office ] [-PasswordNeverExpires ] [-PhoneNumber ] [-PostalCode ] [-PreferredLanguage ] [-State ] [- StreetAddress ] [-StrongPasswordRequired ] [-TenantId ] [-Title ] [-UsageLocation ] [-UserPrincipalName ] [ ] Example Set-MsolUser –UserPrincipalName –Title ‘Chief Executive

SWAPPING USER NAMES Set-MsolUserPrincipalName -UserPrincipalName OldUserName -NewUserPrincipalName NewUserName

HOW TO USE POWERSHELL COMMANDS IN VISUAL STUDIO 1.Reference Automation DLL 2.Create an instance of PowerShell 3.Import Azure AD module 4.Connect with credentials 5.Build strings with PowerShell commands 6.Invoke the commands with script invoker

AUTOMATING POWERSHELL - 1 Add a reference to System.Management.Automation Add the following using statements in your code using System.Management.Automation; using System.Management.Automation.Runspaces;

AUTOMATING POWERSHELL - 2 //Create PowerShell instance PowerShell shell = PowerShell.Create(); //Create Session state InitialSessionState initial = InitialSessionState.CreateDefault(); //Create Runspace Runspace runspace = RunspaceFactory.CreateRunspace(initial); runspace.Open(); //Create Invoker RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);

AUTOMATING POWERSHELL - 3 //Import Azure AD Module scriptInvoker.Invoke("Import-Module 'MSOnline'"); //Elevate execution rights scriptInvoker.Invoke("Set-ExecutionPolicy Unrestricted"); //Create secure password string scriptInvoker.Invoke("$PW = ConvertTo-SecureString –String Password –AsPlainText -Force"); //Create user string scriptInvoker.Invoke("$User = //Create credential string scriptInvoker.Invoke("$cred = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $User, $PW"); //Connect to Office 365 scriptInvoker.Invoke("Connect-MsolService -Credential $cred");

SHAREPOINT USERS Data is transferred from Office 365 Users Additional Fields can be added Updated under the SharePoint link in Office 365 Admin

CREATING A NEW PROFILE PROPERTY

WHY DON’T COMPANIES USE ADDRESSES TO IDENTIFY USERS? 1. People change their names 2. Companies use to signify types of employees 3. Companies get bought and sold

TYING AN EMPLOYEE ID TO A PROFILE Create a new profile property Set the property to indexed Set the property to be crawled in search settings Populate the property Write code to search for the person based on new property

MAKING A PROFILE PROPERTY SEARCHABLE Navigate to Search Schema Add a Managed Property for Employee ID profile property Make the Managed Property Searchable, Queryable, and Retrievable Populate Employee ID after you set the managed property values NOTE: You cannot force an Office 365 full crawl so values added before the managed property is created may not show up in search.

CONNECTING TO OFFICE 365 USER PROFILES Build credentials Connect to user profile web service ( mx) mx Use cookies to authenticate Use claims authentication to get users or set properties i.e. i:0#.f|membership|

BUILD A SECURE PASSWORD string password = “Password"; var securePassword = new SecureString(); foreach (char c in password) { securePassword.AppendChar(c); }

CONNECT TO WEB SERVICE UPS.UserProfileService upserv = new UPS.UserProfileService(); Uri webUrl = new Uri(" string userName = SharePointOnlineCredentials onlineCredentials = new SharePointOnlineCredentials(userName, securePassword); CookieContainer authContainer = new CookieContainer(); string authCookieValue = onlineCredentials.GetAuthenticationCookie(webUrl); authContainer.SetCookies(webUrl, authCookieValue); upserv.UseDefaultCredentials = false; upserv.Url = webUrl.AbsoluteUri; upserv.CookieContainer = authContainer;

QUERY THE EMPLOYEE ID using (ClientContext clientContext = new ClientContext(" { clientContext.Credentials = onlineCredentials; KeywordQuery keywordQuery = new KeywordQuery(clientContext); keywordQuery.QueryText = "EmployeeID:" + strEmployeeID; keywordQuery.HiddenConstraints = "scope:" + "\"People\""; keywordQuery.RankingModelId = "D9BFB1A B2-BBD9983AC8A1"; keywordQuery.SourceId = new Guid("B09A EA-4AF9-81EF-EDFAB16C4E31"); keywordQuery.SelectProperties.Add("EmployeeID"); keywordQuery.SelectProperties.Add("Work "); SearchExecutor searchExecutor = new SearchExecutor(clientContext); ClientResult results = searchExecutor.ExecuteQuery(keywordQuery); clientContext.ExecuteQuery(); foreach (var resultRow in results.Value[0].ResultRows) { sAccountName = resultRow["Work "].ToString();} }

PROFILE EXAMPLE 1

PROFILE EXAMPLE 2

PROFILE EXAMPLE 3

BUILD YOUR OWN PROFILE PAGE Make a copy of person.aspx Work on copy in SharePoint Designer (Edit File in Advanced Mode) Delete existing controls you want to replace Use HTML/CSS to design page and outline page Use SharePoint controls to insert profile data

PROFILE CONTROLS Load Profile Data Profile field examples Profile Picture Mobile Phone

DEALING WITH LISTS var emp = document.getElementById('txtEmploy'); var emp2 = emp.innerText; var divEmployee = document.getElementById('divEmploy'); if(emp2.length > 7) { var sEmploy2 = emp2.split(";"); for (var i in sEmploy2) { sEmploy = sEmploy + " " + sEmploy2[i] + " "; } sEmploy = sEmploy.substring(0,sEmploy.length-5); divEmployee.innerHTML = sEmploy + " "; divEmployee.style.display = "block"; emp.style.display="block"; }

MICHAEL Questions 37

SPECIAL THANKS TO OUR SPONSORS! Platinum Silver Gold T-Shirts Prize sponsors include: Mahalo!