|Todd Klindt||8/10/2017 9:16 AM||Podcast||0|| |
|Todd Klindt||8/7/2017 10:46 AM||Podcast||0|| |
|Todd Klindt||7/27/2017 10:35 AM||Podcast||0|| |
|Todd Klindt||7/25/2017 4:36 PM||SharePoint 2016; Speaking||0|| |
I do love autumn and smell of tech conferences. This fall is a busy one. I’m going to be all over, but I did want to let you all know I’ll be at Microsoft’s big Ignite shindig in Orlando. Go ahead and sign up and block off September 25-29 on your calendar now. While you’re at Ignite join Jason Himmelstein and me for our session, SharePoint Server 2016 migration in the real world: How to avoid making our mistakes. While Jason and I both firmly have our heads in the cloud these days, SharePoint Server is still our first love. In this session we’ll talk about migrations to SharePoint Server 2016 we’ve taken part in and what things we’ve screwed up. It promises to be a good time, swing by.
I’ll also be doing my weekly podcast live from the Expo floor. I’m also going to try to get some other slots at their podcasting booth. The camera loves me.
If you’re going to be at Ignite and you want to get together, send me an email to firstname.lastname@example.org. I usually try to schedule a breakfast or lunch with my podcast listeners, but I would love to meet anyone, whether they suffer through my podcast or not. If you’re going to be around, drop me a line.
See you at Ignite,
|Todd Klindt||7/21/2017 9:31 AM||Office 365; Hybrid||0|| |
With Shane’s prodding I’ve decided to put some instructional videos out onto YouTube for some of the common tasks people ask us about. I’m trying to break the videos up into small digestible chunks, and because of that some are more exciting than others. This one falls on the “less exciting” side. But it sets the stage for some very cool stuff.
In this video I start slow by just showing how to add your domain, like contoso.com, to your Office 365 tenant. It’s nothing fancy or earth-shattering, but it is the first part of doing much cooler things. Things that I will also immortalize on YouTube for future generations to enjoy.
Add a Domain to Office 365
If you don’t want to miss out on the exciting sequels to this video, subscribe to my YouTube channel. Then you’ll get pestered every time I add something new. Everyone wins!
|Todd Klindt||7/20/2017 3:11 PM||Podcast||0|| |
|Todd Klindt||7/17/2017 12:34 PM||Hybrid; PowerShell||1|| |
I’ve been working with Azure AD Connect (AADC) for a couple of years now. For those of you that haven’t had the pleasure yet, Azure AD Connect is a tremendous piece of software that you install on-prem and it syncs your on-prem Windows Active Directory to your Azure Active Directory or Office 365 tenant. It has come a long way since the old DirSync days. If you’re an IT Pro that has mainly worked with on-prem software like SharePoint and you’re curious where your career is going, this is it. You’re going to have to become an identity expert, or maybe start practicing those grocery bagging skills. Running AADC through its paces is a good way to start your journey into Azure, Hybrid, and Identity.
Azure AD Connect has greatly benefitted from Microsoft’s recent(-ish) move to agile software updates. For well over a year now Microsoft has been slipping out updates to AADC and made significant improvements to it, all the while not breaking anything. An amazing feat! You can see from their Version History page they keep very busy.
At the very beginning of the AADC installation Wizard you encounter a fork in the road; you can do an Express Install, or an Advanced Install. I tell most people, especially people that are new to AADC that Express is a great option. It’s very close to Next –> Next –> Finish and it does a good job getting everything wired up. Later, you can go back and rerun the installation in Advanced mode to tweak anything you need to. It’s very well done. One of the things that the Express installation does is set AADC to automatically upgrade itself when Microsoft publishes its next tasty upgrade. Like I mentioned above, the upgrades have added some great functionality with none of those nasty regressions that we’ve come to fear from upgrades. Unfortunately, until recently, if you chose to do an Advanced install right out of the chute, AADC was not set to automatically upgrade itself. And to make matters worse, that wasn’t necessarily brought to your attention during the install. If you weren’t paying attention, or didn’t know to look, you’d be stuck with that version of AADC forever. How sad!
To address that scenario, and just to give you some control over the upgrade process, I’m blogging the setting. This way you can see what your auto upgrade status is as well as change it if you’d like. Plus it gives you another opportunity to play in PowerShell. Who doesn’t love that?
First log into the machine where AADC is installed and open a PowerShell prompt. It does not need to Run as Administrator. There are two cmdlets that deal with AADC’s autoupgrade status; Get-ADSyncAutoUpgrade and Set-ADSyncAutoUpgrade. Here’s a screenshot to break up the monotonous wall of text:
As expected, we can run Get-ADSyncAutoUpgrade to set what our current status is:
We can see here that AADC is set to automatically upgrade itself with the newest juicy bits that come out. What if we didn’t want that? Maybe we have a migration freeze coming up and updates can be applied. It’s a sad state of affairs, but it happens. To do that we use:
Set-ADSyncAutoUpgrade -AutoUpgradeState Disabled
As a guy that’s used a lot of PowerShell, I find myself wishing this followed the $TRUE / $FALSE structure, but I can work with this. Since there are only three acceptable values (Enabled, Disabled, and Suspended), you can tab complete the cmdlet name, the parameter name, and the value “disabled.” That helps.
Now AADC will not upgrade itself. But does this impact the sync cycles? Not at all. If we run Get-ADSyncScheduler we see that syncs are still happy and scheduled to run as expected.
Once our maintenance freeze is over we can reenable the autoupgrades with
Set-ADSyncAutoUpgrade -AutoUpgradeState Enabled
That’s a much more satisfying feeling than disabling.
In most cases I am afraid of autoupgrading software, but so far AADC hasn’t burned me, so I’ll give it the benefit of the doubt.
|Todd Klindt||7/17/2017 9:26 AM||Podcast||1|| |
|Todd Klindt||7/5/2017 4:02 PM||Office 365||1|| |
Over the last couple of years, my talks have migrated from fewer on-prem SharePoint Server talks, to more Office 365 centric talks. One of the questions I get asked more and more frequently, by admins that are trying to find their place in this new, cloudy, world is, “How can I keep up with all of the changes to Office 365?”
It’s a good question, and one a lot of people are struggling with, especially if they’re used to on-prem administration. As a SharePoint Server admin, updates came out no more frequently than once a month, and even then we were in complete control to when that update was applied to our farms. As our workloads are moving to Office 365 that is thrown completely on its ear. Now updates happen to Office 365 any day of the week. Sometimes they’re turned on for end users, sometimes they aren’t. You just never know. If you don’t know they’re coming, you can’t properly prepare yourself or your user base. Nobody likes that.
So here are a couple of ways to have a fighting chance against unexpected Office 365 updates.
1) Sign up for messages in the Message Center
You have to be a Tenant Admin for this one, but I assume most people reading my blog that aren’t my mom, are tenant admins. The Message center is a place in the Office 365 Portal where you can tell Office 365 which products you care about, and how it can tell you about changes and outages.
You can find this little gem under Health > Message center. The messages deal with outages, updated features, new features, the whole enchilada. In the upper right you can set which products you see messages for. If you’re not using Skype for Business, shut off those messages. The bottom left is where the real gold is. You can have Office 365 email you once a week with that week’s new messages. This is a great way to see what is new if you’ve forgotten to check the Message center. The link at the top middle, “Read about staying on top of Office 365 changes”, takes us to our second tip.
2) Office 365 Roadmap
For a few years the Office 365 Roadmap has been a great way to see what’s on the horizon for your favorite Office 365 property. It not only shows was coming, but what has been delivered and what has been cancelled as well.
3) Microsoft Tech Community
The more things change, the more they stay the same. When I was cutting my teeth as a SharePoint admin back at the turn the century, the place to go for answer was Usenet. Ask your grandparents about it. Today, that same need is met by online forums. The Microsoft Tech Community is the place to go with your cloudy questions. While it’s not specifically a resource for what’s new with Office 365, that does get covered there.
4) First Release
First Release isn’t really a place, First Release is more like a state of mind. First Release lets your tenant, or some of the users in your tenant, see new functionality in Office 365 before it’s released to the entire Office 365 loving world. It’s not a good idea to have your entire Production tenant in First Release, so either only include a few users, or enable it for a test tenant. It’s also important to point out that some things are only rolled out to First Release Users, or First Release Tenants, but not both. They aren’t always in step. Read more about that in Marc Anderson’s blog post.
Of course you can also follow a ton of Twitter accounts to keep up. I’d try to list them all here, but I’d just embarrass myself.
I hope this helps. Let me know if there are any other means you use to keep up with Office 365.
|Todd Klindt||7/5/2017 9:16 AM||0|| |
June and July are always nervous times for me, and I’m not talking about fireworks going off around me. It’s because for the last 11 years July 1st has been when I found out if I was renewed as a Microsoft MVP. This year was no different, though maybe a little worse. Microsoft has been tweaking the MVP program and I never take for granted whether I’ll meet the mark or not.
I’m happy to report that I did in 2016. I was awarded my 12th MVP award July 1st! Being a SharePoint and Office 365 kinda guy my award is in the Office Servers and Services category.
I have met so many great people in the MVP program and I’m honored to be a part of it. Thanks to Microsoft for including me, and thanks to all the people that have helped me out along the way. It means a lot.
|Todd Klindt||6/29/2017 10:12 AM||Podcast||0|| |
|Todd Klindt||6/27/2017 5:38 PM||Podcast||0|| |
|Todd Klindt||6/27/2017 11:35 AM||Podcast||0|| |
|Todd Klindt||6/8/2017 3:42 PM||Podcast||0|| |
|Todd Klindt||5/26/2017 9:22 AM||Podcast||0|| |
|Todd Klindt||5/25/2017 9:13 AM||Speaking||0|| |
As IT Pros our jobs have always been changing, but the rate at which they’re changing now is almost unprecedented. I’m glad I’m wearing my seatbelt. As we make the transition to Office 365 one of our new responsibilities, or a larger responsibility is Security and Compliance. You may have been able to avoid it in the past, but you may not be so lucky in the future.
So where can an on-prem SharePoint admin get a start with it? I’m glad you asked. On Wednesday May 31st, the nice folks at Petri.com are putting on a webinar where Shane Young and I will be talking about the processes and technologies you’ll need to get familiar with. We’ll cover the basics and show you some tools to get you started. And maybe we’ll find some time to make fun of each other too.
How can you get all of this fun and information? Point your favorite web browser at this registration page and you’ll be all set.
I look forward to seeing you.
|Todd Klindt||5/18/2017 10:47 PM||Podcast||0|| |
|Todd Klindt||5/12/2017 5:00 PM||Office 365; OneDrive||0|| |
I’ve been dancing with this girl we call SharePoint for well over a decade, and I swear she gets prettier every day. It has been fun watching Microsoft squash bugs and add functionality to the product along the way. One area that has been particularly satisfying is watching Microsoft address areas where the SharePoint Haters always take jabs at SharePoint. Things like, “SharePoint can’t handle more than 5000 items in a list,” or “You can’t have site collections larger than 100 GB in SharePoint,” or my favorite, “SharePoint Designer is free and users are going to destroy SharePoint with it!” Oh, wait.
OneDrive, Now with More Character
Recently Microsoft has fixed two of the limitations that plagued, character support, and URL length. Last month Microsoft chipped away at the former when they released this blog post, New support for # and % in SharePoint Online and OneDrive for Business. In that blog post they announce that there’s a new API that will allow the use of the characters # and % in file and folder names in SharePoint Online (SPO) and OneDrive for Business (ODFB). In the past these characters were forbidden because they were used for other purposes in HTTP. The # character was used to reference anchors in HTML documents. The % was also busy being how you escaped ASCII characters in URLs. Any SharePoint admin worth their salt is well accustomed to space characters showing up as %20 in URLs like ‘Shared%20Documents.’ Since so much of SPO and ODFB is accessed through URLs, this made using those two characters particularly tricky. But you know Microsoft, they have some smart folks there, they figured it out.
Microsoft has always been stellar with backwards compatibility (sometimes to their detriment) and this is no exception. When this feature rolls out in June 2017 they will do it with a new API, so the old APIs will continue to work as expected. If the tenant was created before June 2017 a Tenant Admin will have to use PowerShell to toggle the SpecialCharactersStateInFileFolderNames parameter to Allowed. After that, file and folder names can include # and %. Site and web names cannot. You’ll also have to have the OneDrive Next Gen Sync Client to sync files and folders with # and % in their names.
This only pertains to OneDrive for Business with SPO and Office 365. It is not for SharePoint Server 2016 on-prem.
ODFB Office 365
URL Size Matters… Less…
Another place that SharePoint got its nose bloodied was URL length. For most cases it was enough, but every once in a while it would bite people, like during upgrades. Last week Microsoft, hot off their victory against those rascals # and %, announced they are bumping the maximum path limit in SharePoint Online and ODFB from 256 characters to 400! That’s an increase of over 50%! And this 400 character limit does not apply to the query parameters at the end. Since SharePoint Online doesn’t have any the ability to add managed paths, I’ve seen people get creative with site collection names. Now they can use those extra 144 characters to get extra creative.
This is also only for SharePoint Online.
ODFB Office 365
There are more great OneDrive improvements to blog. I’ll get to them next week.
|Todd Klindt||5/11/2017 11:39 AM||Podcast||0|| |
|Todd Klindt||5/8/2017 3:16 PM||Podcast||0|| |
|Todd Klindt||4/18/2017 11:15 AM||Podcast||0|| |
|Todd Klindt||4/17/2017 9:29 AM||Podcast||0|| |
|Todd Klindt||4/14/2017 5:03 PM||OneDrive||0|| |
As anyone that listens to my podcast knows, I’m a fan of both the Consumer and For Business versions of OneDrive. I use it for a lot of my personal file syncing as well as with several Office 365 tenants, both production and test. Some of that is Production, some of it is with demo tenants. In the last couple of months I’ve stumbled across an unbelievable gap in the product, you can’t delete a OneDrive for Business (ODFB) account that you can’t log in to from the Windows Next Gen Sync Client. (NGSC).
You can delete OneDrive (consumer) accounts. And you can delete a ODFB account if you’re logged into it. Both of those show up on the Accounts tab of the Sync Client Settings page. But if you can’t log into the Office 365 account you’re syncing to, you can’t delete it. It’s stuck in this weird purgatory where the folders still show up in Explorer, but the blue icon for the account doesn’t show up in the system tray. It’s very confusing.
I’ve been trying to figure out how to delete some stale accounts for a while and it was inconceivable to me that that wasn’t possible. Today, I finally swallowed my pride and reached out for help. I tweeted the official (pronounced “Oh-FISHeeal”) OneDrive Twitter account. If they can’t help me, no one can. They have a blue check mark! This was their response:
I can’t find it because it’s not there! But, they do offer a solution, we can vote for this feature (really, deleting an account is a “feature”) on User Voice. It doesn’t cost anything but your time, and each vote you cast will bring me closer to my nirvana of being able to purge all the unused ODFB folders from my PC.
Vote early, vote often.
Thanks for your support.
|Todd Klindt||4/14/2017 10:18 AM||Speaking||0|| |
Over the years I’ve had the fortune to hang out with some of the best and brightest people in my industry. I’m happy to report that trend is continuing. I will be speaking at Office 365 in Haarlem, Netherlands June 19-22 2017. This conference is such a big deal they even made me these fancy banners to put on my web site:
Isn’t that fancy! If you’d like to go to Office 365 you can use SPRTK483 as a discount code to get 10% off the price of admission.
While I’m a SharePoint and Office 365 kinda guy, there are a bunch of great technologies being covered here. There are experts in Azure, Exchange, SharePoint, Office 365, both in Infrastructure and Development. If you work on Microsoft technologies, there is someone here you can learn from.
I’ll be doing two sessions, Mastering PowerShell with Office 365 and Beginning Azure AD Identity for SharePoint and Office 365 Administrators. Both classes will be chock full of useful content you can put to work right away. Both sessions also have deeper follow-up sessions by other speakers so you can dig in deeper if you’d like.
So, consider coming to Office 365 Engage, and if you do, please come find me and introduce yourself. I love meeting new people.
|Todd Klindt||4/12/2017 4:42 PM||Podcast||0|| |
|Todd Klindt||4/11/2017 10:49 PM||PowerShell||0|| |
Are you a SharePoint or Office 365 admin that wants to take their PowerShell mojo up another step? Are you a Windows admin that knows they need to master PowerShell but don’t know where to start? Are you someone with a lot of time on their hands and want to spend some of their employer’s training budget? Have I got good news for you! Shane and I are putting on two 90 minute PowerShell classes on Thursday April 20th. Shane will take the first session where he’ll cover how to get PowerShell set up exactly the way you’d like as well as a foundation of the core cmdlets you should know and love. He’ll also help you understand PowerShell scripts that you
steal learn from on the web.
Then I take the wheel for part 2. I’ll cover looping techniques to help you make the most of those delicious objects that PowerShell serves up for us. Next I’ll move on to how to deal with a variety of files, both writing to and reading from. I show you how to write your first scripts and how to securely deal with passwords. For my big finale I’ll show how to do some basic Active Directory tasks.
I know, I know, this seems like a lot to take in in two 90 minute sessions. To help out with that we’re going to record both sessions and make them available for 30 days. We’re also going to provide each student a file with all the examples we run during the class. And of course you’ll be able to ask questions like during the class and you’ll get to enjoy all the Shane and Todd banter you can stand. Shane will also autograph any undergarments that are requested.
Each of these sessions are only $99 each. You can sign up today at BoldZebras.com.
|Todd Klindt||3/31/2017 3:11 PM||Podcast||0|| |
|Todd Klindt||3/24/2017 8:13 AM||Podcast||0|| |
|Todd Klindt||3/10/2017 9:22 AM||Podcast||0|| |
|Todd Klindt||3/2/2017 8:50 AM||Podcast||0|| |
|Todd Klindt||2/23/2017 9:00 AM||Podcast||0|| |
|Todd Klindt||2/20/2017 1:23 PM||Podcast||0|| |
|Todd Klindt||2/17/2017 10:56 AM||SharePoint 2016; SharePoint 2013; Office 365||0|| |
A rolling stone gathers no moss (see what I did there?) and I’m not letting myself get fat and lazy during my unemployed stretch. After drowning my sorrows in a pint of Ben & Jerry’s Chunky Monkey, I put on my good sweatpants and went right back to work. Shane and I, after watching funny cat videos for a couple of hours, decided what the world needed was a SharePoint 2013/2016 & Office 365 admin class taught with that Todd and Shane panache that has been loved from sea to shining sea.
We will be teaching this class, our SharePoint Server 2013 and 2016 Administrators class + Cloud overview March 20th through the 24th 11:00 to 2:30 EST, with a lunch break in the middle. The class will be taught live, so you’ll be able to stump Shane as much as you’d like. It will also include Hands On Labs for your puttering around pleasure. All of this training is online, so you can learn and stay in your Iron Man jammies. I know that’s what I’ll be wearing.
All of this can be yours for a mere $1200 USD. You can sign up here.
If you have questions, hit me up on Twitter or email me at email@example.com.
See you then,
|Todd Klindt||2/13/2017 7:37 AM||0|| |
As of last week, I am no longer at Rackspace. It was a great 5 year run, and I look back on them fondly. I made a ton of great friends, and learned so much. But, it’s time to move on…
I’ve gotten a ton of support from everyone, and that has really helped. Thanks a lot.I’m not sure what’s next for me. I’m still weighing my options. You can always reach out to me on Twitter, LinkedIn, or email me at firstname.lastname@example.org, (replace firstname with my first name) if you have suggestions on what I should do next. Getting out of the IT field at working at Wendy’s is a valid suggestion, and one I’ve received multiple times during my career.
I do have good news. The Podcast will continue. You’re not getting rid of Shane and I that easily. I will also be sullying the stage at SPTechCon in Austin in April. If you’re there, stop in and say, “howdy.” Also feel free to offer to buy my lunch, or give me some gas money.
|Todd Klindt||2/12/2017 9:58 AM||Podcast||0|| |
|Todd Klindt||2/3/2017 2:23 PM||Podcast||0|| |
|Todd Klindt||1/26/2017 1:51 PM||Podcast||0|| |
|Todd Klindt||1/23/2017 2:47 PM||Podcast||0|| |
|Todd Klindt||1/17/2017 4:06 PM||Office 365; PowerShell||0|| |
I love blog posts like this. PowerShell and Office 365, two of my favorite tastes, all rolled up into one. This particular blog post is not groundbreaking, but it’s fun. I’ve recently set up a few Office 365 tenants, and part of that is adding one or more custom domains. Of course you can use the Office 365 Admin Portal to do that, and there’s no shame in that. (Well, maybe a little) But if you want to take your Office 365 Admin game up another level, you can do all of that with PowerShell. I’ll show you how in this blog post.
Getting the Module and the Domain
You need to make sure you have the correct Azure PowerShell module installed before you can take advantage of any of the goodness in this blog post. When I wrote this blog post, I was using version 184.108.40.206 of the MSOnline module. If you don’t have it installed, you can watch Shane’s crappy video walkthrough on installing it. Time marches on, and it marches double-time in the cloud. So while I assume these steps will work later versions of the module, I can’t guarantee that.
To add a domain to your Office 365 tenant, you’ll obviously need a domain. It doesn’t matter where you register the domain, as long as you have the ability to add DNS records. Microsoft does have a deal in place with GoDaddy, so getting your domain there does have some advantages.
Adding the Domain
Once you have the module installed, and the domain purchased it’s time to open up PowerShell and make some magic. Open up “Microsoft Azure Active Directory Module” to get the party started. I christen every PowerShell session with a heaping helping of Start-Transcript, so do that first. Then use Connect-MsolService to connect to your tenant. If you haven’t already added a custom domain to your Office 365 or Azure tenant, then you’re likely logging in with a username that looks like email@example.com, where sometenant is your tenant name, and someone is a tenant admin for that tenant. To get the landscape of the domains in your tenant, use Get-MsolDomain. It looks like this:
Once you’ve confirmed the domain you want to add isn’t already there you can use New-MsolDomain to add it. The command I ran was
New-MsolDomain -Name "toddsblog.com"
It might seem like that should be enough. The domain is added, Ta-Da! If that was the case, this would be a very short blog post. We still have a couple of steps left. I have to prove to Microsoft that I own toddsblog.com. Maybe toddsblog.com is Todd Rundgren’s blog, or maybe Todd Bridges. Who knows? To verify that I am truly the Todd behind toddsblog.com, I have to make a specific DNS entry that Microsoft tells me to add.
Before I can add the correct DNS entry, I need to know what it is. The Get-MsolDomainVerificationDns gives me that value. We have two options, we can create a TXT record, or an MX record. Since I’m not moving the mail for toddsblog.com over to Office 365 right now, I went with the TXT record. If I was moving mail in the short term, I would have went for the MX record instead, and saved myself the step of adding it later. To get the TXT record I need, I ran this command:
Get-MsolDomainVerificationDns -DomainName toddsblog.com -Mode DnsTxtRecord
Here is the output I received:
I used GoDaddy’s domain management tool to add this record. While the label in the screenshot says “toddsblog.com” I really needed to add a record for @, which tells DNS clients “this domain.” It looked like this:
DNS takes its time to move around the Internet, and it gets cached a lot of places along the way. To improve the chances that Microsoft gets the new record, I used nslookup to query a major DNS provider, Google, and make sure it was there:
nslookup -type=TXT toddsblog.com 220.127.116.11
I got the output I expected:
The final step is telling Microsoft to check that we made the entry, and made it correctly. Let’s see what happens:
Confirm-MsolDomain -DomainName toddsblog.com
The output looks like I did it right.
Let’s check our list of domains again with Get-MsolDomain
More good news. And finally, in the UI:
The domain shows up as “Setup in progress” because I haven’t added all the DNS records Office 365 needs to send email and stuff like that. The domain is still good though. I can assign that domain to users. It’s fully functional.
To recap, here was the whole process:
New-MsolDomain -Name "toddsblog.com"
Get-MsolDomainVerificationDns -DomainName toddsblog.com -Mode DnsTxtRecord
Confirm-MsolDomain -DomainName toddsblog.com
The other stuff was just fun fluff.
I hope this helps, and encourages you to get your PowerShell on when working with Office 365 and Azure.
|Todd Klindt||1/16/2017 2:28 PM||Podcast||0|| |
|Todd Klindt||1/9/2017 9:57 AM||0|| |
|Todd Klindt||12/29/2016 3:17 PM||Podcast||0|| |
For the last podcast of 2016 Todd and Shane go off script talk and do something original, they talk about what's happened in 2016 and give their take on it. They talk about football (American football that is), what constitutes a Christmas movie, and mall riots. They spend a little time talking about the tech stories of 2016, like the iPhone, some more about the iPhone, the Galaxy Note 7, hacking, and cars that will drive Shane to Chick-Fil-A any time he'd like.
Another blatant shoutout for Todd's Birthday Charity drive at http://pointgowin.com/tkcharity
Subscribe in iTunes
Running Time: 59:09
Brought to you by Rackspace
|Todd Klindt||12/21/2016 5:11 PM||Podcast||0|| |
|Todd Klindt||12/19/2016 8:57 AM||Podcast||0|| |
|Todd Klindt||12/8/2016 4:07 PM||Office 365; PowerShell||0|| |
I’ve been working on a blog post about the script I use to license users inside of Office 365. It’s a doozy. You’re going to love it, I promise. As a rule, I have someone proof read all of my blog posts, especially ones that have PowerShell code in it. For those of you that have read any of my blog posts, that might come as a shock, but it’s true. When Shane was testing my code he kept getting errors. In this case, I just chalked it up to his ineptitude, which is the source of many of his troubles, so I blew him off. I had tested the crap out of this PowerShell script so I trust it more than I trust Shane.
But a couple of days ago I was running my trusty script and I got the error. Now stuff was getting serious! Here’s the code I ran:
PS C:\> $lic1 = "MOD873457:ENTERPRISEPREMIUM"
PS C:\> $user = "alonso@MOD873457.onmicrosoft.com"
PS C:\> Set-MsolUserLicense -UserPrincipalName $user -AddLicenses $lic1
Here’s the very unpleasant response that PowerShell gave me:
Set-MsolUserLicense : Unable to assign this license because it is invalid. Use the Get-MsolAccountSku cmdlet to retrieve a list of valid licenses.
At line:1 char:1
+ Set-MsolUserLicense -UserPrincipalName $user -AddLicenses $lic1
+ CategoryInfo : OperationStopped: (:) [Set-MsolUserLicense], MicrosoftOnlineException
+ FullyQualifiedErrorId : Microsoft.Online.Administration.Automation.InvalidUserLicenseException,Microsoft.Online.
I did like it suggested, and sure enough the SKU was legit:
PS C:\> Get-MsolAccountSku
AccountSkuId ActiveUnits WarningUnits ConsumedUnits
------------ ----------- ------------ -------------
MOD873457:ENTERPRISEPREMIUM 25 0 1
MOD873457:PROJECTPREMIUM 25 0 0
Here is my failure in pictures
It turns out that Shane is not an idiot. Well, if he is, this is not an example of it. It’s just a poor error message. While the error says the license is invalid, it’s really not. It threw that error because that user already had that license.
We can verify that with this command:
(Get-MsolUser -UserPrincipalName $user).licenses
The output looks like this:
Unfortunately there’s no good way that I know of to tell why you’re getting that error, or walk through a user’s existing licenses and see if it’s already applied. It can be done, but it’s ugly text parsing. If I figure out something elegant, I’ll let you all know.
After much swearing and figuring this out on my own, I did find one vague reference to it in Microsoft’s
Assign licenses to user accounts with Office 365 PowerShell document.
Not helpful, Microsoft, not helpful.
|Todd Klindt||12/8/2016 1:45 PM||Podcast||0|| |
|Todd Klindt||12/2/2016 1:53 PM||Podcast||0|| |
|Todd Klindt||12/1/2016 10:03 AM||Podcast||0|| |
|Todd Klindt||12/1/2016 9:50 AM||Podcast||0|| |
|Todd Klindt||12/1/2016 9:39 AM||Podcast||0|| |
|Todd Klindt||11/3/2016 5:17 PM||Podcast||0|| |
|Todd Klindt||10/31/2016 2:58 PM||Podcast||0|| |
|Todd Klindt||10/31/2016 9:45 AM||Podcast||0|| |
|Todd Klindt||10/17/2016 2:59 PM||PowerShell; Office 365||0|| |
It’s been a while since I’ve gotten a chance to get my hands dirty with some good old PowerShell and last week I got that opportunity. Here is the whole fabulous tale.
A customer wanted some helping scripting out their migration to Office 365. They already had directory synchronization set up between their Windows AD and Azure AD. They are slowly rolling out Office 365 to their users, 10 or 20 at a time, and they are rolling out the services gradually. They’re starting with SharePoint Online. They’ll eventually migrate to Exchange Online, and of course they’ll never use Yammer. Since they’re doing it in batches, PowerShell is the perfect tool to license up their users, but there was a snag. Adding a license to a user in PowerShell is easy, and it’s easy to apply individual license service plans to a user in the UI, but it’s not easy to do service plans in PowerShell, until today.
Here is what the customer was trying to do:
We’re all familiar with using Set-MsolUserLicense to assign licenses to users. The problem is that it assigns all the service plans to the user. In our case we don’t want the user to be licensed for Exchange or Yammer, among other things. Figuring out how to combine the flexibility of the UI, with the the looping and scriptablity of PowerShell is what we’re after.
Fortunately, PowerShell had the answer for us. With very little work I discovered the New-MsolLicenseOptions cmdlet. This does exactly what I was looking for. However, using it was a little tricky, so I thought I’d write it up.
The first step is to license one user in the UI exactly how you want all of your users to be licensed. We will essentially use this as a template. In our case, the screenshot above is our template. We will use PowerShell to see how that user is configured. I used this command:
(Get-MsolUser -UserPrincipalName EnricoC@MOD873457.onmicrosoft.com).licenses
This gave me all the licenses that user has. We can use Get-MsolAccountSku to see which licenses are which, but we need to drill down one level deeper. We need to discover the service plan names of the Enterprise SKU. From the screenshot above we can see that it’s the first license listed. Because these lists are zero based, the first one is 0 and we get to it like this:
(Get-MsolUser -UserPrincipalName EnricoC@MOD873457.onmicrosoft.com).licenses.servicestatus
And it looks like this:
We can see the Service Plans that show as disabled are the same ones that are off in our first screenshot. More importantly it gives us the Service Plan names that PowerShell will need to use when setting our options. Here is how we set the options:
$opts = New-MsolLicenseOptions -AccountSkuId MOD873457:ENTERPRISEPREMIUM –DisabledPlans “LOCKBOX_ENTERPRISE","EXCHANGE_ANALYTICS","YAMMER_ENTERPRISE","EXCHANGE_S_ENTERPRISE"
Now that we have that, we can license our users in the normal way with one additional step to set the options.
For completeness, here is the whole process. We have to set the user’s region, then apply the license, then apply the options for that license.
Set-MsolUser -UserPrincipalName BrianJ@MOD873457.onmicrosoft.com -UsageLocation US
Set-MsolUserLicense -UserPrincipalName BrianJ@MOD873457.onmicrosoft.com -AddLicenses "MOD873457:ENTERPRISEPREMIUM"
Set-MsolUserLicense -UserPrincipalName BrianJ@MOD873457.onmicrosoft.com -AddLicenses "MOD873457:ENTERPRISEPREMIUM" -LicenseOptions $opts
And in pictures…
and more pictures:
As I was testing this, I had better luck if I applied the license as a whole before I tried to add any options to it. And if Office 365 doesn’t like the values you put in for the license options, it will tell you when you assign the license to the user, not when you create the $opts variable with New-MsolLicenseOptions.
We now have a way to mass license users with specific functionality, and we also know how later on we can go through and toggle an individual service, like Exchange, once the company moves over to it.
Now you can amaze your coworkers once again with your PowerShell prowess.
|Todd Klindt||10/14/2016 2:52 PM||Podcast||0|| |
|Todd Klindt||10/13/2016 9:17 AM||SharePoint 2016||0|| |
A couple of weeks ago at Ignite Jeff Teper announced that in November we SharePoint admins would have even more to be thankful for than a belly full of turkey and mashed potatoes. Feature Pack 1 for SharePoint 2016, originally promised to us in 2017, will actually be out in November of 2016. Hooray!
I’ll have a larger write-up on Feature Pack 1 in general, but one of the biggest parts of the FP1 package is the improvements to MinRole. Those improvements deserve an entire article all to themselves. So, I wrote one. For my friends at Petri.com. You can read all about it here:
Read it. Like it. Share it with your friends.
|Todd Klindt||10/10/2016 1:34 PM||Podcast||0|| |
|Todd Klindt||10/3/2016 2:15 PM||Podcast||0|| |
|Todd Klindt||10/3/2016 2:05 PM||Podcast||0|| |
|Todd Klindt||9/19/2016 3:35 PM||Podcast||0|| |
|Todd Klindt||9/12/2016 10:23 PM||Speaking||0|| |
In a couple of weeks I’ll be hanging out at Microsoft Ignite in Atlanta. If you read this blog and will be at Ignite stop by and say “Hi.” Here’s a schedule of my sessions and events.
Precon session – SharePoint Server 2016 Upgrade and Operations Deep Dive
Sunday, September 25 – 9:00 – 5:00
This is an all day Preconference session with some of the smartest people in SharePoint world, and me. :) Join Neil Hodgkinson, Bill Baer, Spencer Harbar, Troy Starr, Bob Fox, Archana Aditi, and me for a full day of SharePoint admin goodness. This session is not included with a regular Ignite registration. It costs extra.
BRK 3033 - Dive into Microsoft SharePoint Server 2016 Upgrade and Migration
Tuesday, September 27 - 10:45am - 12:00pm
Jason and I walk you through upgrading your SharePoint farm to SharePoint 2016.
BRK 3035 - Deploy and provision best practices with Microsoft SharePoint Server 2016
Thursday, September 29 - 12:30pm - 1:45pm
Do you want to install SharePoint 2016 without screwing it up? Then join Jason and I for this session where we cover performance, topology, and some very poor jokes.
I will be at the Rackspace booth hanging out and chatting with folks. Swing by and say hi. If I’m not there, have one of my fellow Rackers give me a call.
I will also be putting together a breakfast get together. Once I get that nailed down I’ll update this blog post. Stay tuned.
See you in Atlanta.
|Todd Klindt||9/8/2016 10:58 AM||Podcast||0|| |
|Todd Klindt||9/2/2016 11:49 AM||Podcast||0|| |
|Todd Klindt||8/22/2016 3:28 PM||Podcast||0|| |
|Todd Klindt||8/22/2016 2:35 PM||Podcast||0|| |
|Todd Klindt||8/15/2016 2:14 PM||SharePoint 2016; Podcast||0|| |
|Todd Klindt||8/5/2016 8:25 AM||Podcast||0|| |
|Todd Klindt||8/2/2016 10:57 AM||Podcast||0|| |
|Todd Klindt||7/9/2016 10:27 PM||Podcast||0|| |
|Todd Klindt||6/30/2016 10:56 AM||Podcast||0|| |
|Todd Klindt||6/10/2016 2:46 PM||Speaking||0|| |
SPTechCon Boston 2016 is almost upon us. For your sanity, and mine, I thought I’d blog where I’ll be and when, so our paths can cross if you’re in town.
Tuesday, June 28th – 4:00 to 5:15 PM
Upgrading to SharePoint 2016
Wednesday, June 29th – 8:15 to 9:30 AM
PowerShell with SharePoint Online
Wednesday, June 29th – 9:45 to 10:30
Stump the Experts!
Wednesday, June 29th – 4:00 to 5:15 PM
Configuring Active Directory Replication with Azure AD
Wednesday, June 29th – 7:00 to 9:00 PM
Office 365 User Group Panel
I hope to see you there. If you’re at SPTechCon, please look me up and say “Hi.”
|Todd Klindt||6/10/2016 10:22 AM||Podcast||0|| |
Ignore this blog post. It’s me testing an IFTTT recipe to automatically send a tweet when I post a podcast. Ain’t automation grand?!
|Todd Klindt||6/10/2016 10:13 AM||Podcast||0|| |
|Todd Klindt||5/31/2016 9:39 AM||SharePoint 2016; SharePoint 2013||0|| |
My guess it’s not your birthday and there are no major gift giving holidays coming up, but even with those restrictions I have a gift for you, a free webinar on SharePoint 2016 Upgrade with me. I would be remiss if I didn’t give a little of the credit to the find folks at Acceleratio, the makers of the everyone’s favorite SharePoint admin tool, SPDocKit. I made a deal with them, they do all the hard work and I take all the credit. So far it’s working out great.
What will we be talking about? I’m glad you asked. Here’s the abstract I sent them:
SharePoint 2016 is upon us. If you haven’t started already, now is the time to start planning and testing your upgrade. In this webinar Todd will tell you what upgrade options you have going to SharePoint 2016 and how to plan your new SharePoint 2016 farm. Then he’ll walk through the upgrade process and show you what to expect. By the end of this webinar you’ll have a confident understanding of what it will take to upgrade your farm to SharePoint 2016, and you’ll be ready to get out there and start upgrading SharePoint!
Again, this is completely free, and I promise you’ll get your money’s worth. You can register here. I hope to see you there.
|Todd Klindt||5/26/2016 11:29 AM||Podcast||0|| |
|Todd Klindt||5/26/2016 10:38 AM||Podcast||0|| |
|Todd Klindt||5/25/2016 1:31 PM||Podcast||0|| |
|Todd O. Klindt||5/9/2016 2:34 PM||Podcast||0|| |
|Todd O. Klindt||5/9/2016 2:29 PM||Podcast||0|| |
|Todd O. Klindt||5/9/2016 2:24 PM||0|| |
|Todd O. Klindt||5/9/2016 2:17 PM||Podcast||0|| |
|Todd O. Klindt||4/27/2016 1:58 PM||SharePoint 2016||0|| |
SharePoint 2016 is nearly upon us. We’re in those awkward teenaged-like years between RTM, which was March 14, and General Availability, which is May 4th. Microsoft has told us a lot about SharePoint 2016, and there’s a lot to be excited about. To get the next chapter in the story, tune in May 4th for the “The Future of SharePoint” event. This event is free, and will happen across the Internet on your monitor of choice. You don’t need to travel all the way to San Francisco, get a hotel, fight the traffic, and sit in a crowded venue to see what exciting things Microsoft has planned for our beloved SharePoint. You can sign up and tune in to this event and get it all that way, in your pajamas and your favorite bunny slippers.
I’ll watching and I might take a stab at live tweeting my thoughts while Mr. Teper and friends are spreading the good news. If you want my up to the minute reactions, follow me on Twitter.
I’m very curious to see what Microsoft has up their collective sleeves. Join me in the Future of SharePoint event on May 4th.
|Todd O. Klindt||4/23/2016 9:14 PM||Podcast||0|| |
|Todd O. Klindt||4/1/2016 5:20 PM||Podcast||0|| |
|Todd O. Klindt||3/24/2016 9:16 AM||Podcast||0|| |
|Todd O. Klindt||3/21/2016 10:35 AM||Podcast||0|| |
|Todd O. Klindt||3/15/2016 10:19 PM||SharePoint 2013; SharePoint 2010; SharePoint 2007; SharePoint 2016||0|| |
On Thursday March 24th, 2016, the fine folks at Petri.com and Veeam have invited me to spend a few moments with you folks talking about SharePoint Backup and Recovery in a free webinar. I get 20 – 25 minutes to tell you all I know about the subject, then the Veeam people will jump in and tell you all the wonderful things their products will do. At the end, there will be a Q&A session. You supply the Qs, I’ll supply the As, or at least make up something plausible. As if that wasn’t enough, one lucky winner will be awarded a Surface Pro 4 during the Q&A session. Second prize is a big hug from me.
Use this link to sign up. It’s free, what do you have to lose? If nothing else, there will be some good heckling to be had.
|Todd O. Klindt||3/11/2016 9:19 AM||Podcast||0|| |
|Todd O. Klindt||3/3/2016 9:39 PM||Podcast||0|| |
|Todd O. Klindt||2/29/2016 9:01 AM||Podcast||0|| |
|Todd O. Klindt||2/12/2016 1:30 PM||Podcast||0|| |
|Todd O. Klindt||2/8/2016 12:54 PM||Netcast; Podcast||0|| |
|Todd O. Klindt||1/31/2016 6:20 PM||Netcast; Podcast||0|| |
For the last several years I have recorded my podcast at 8:30 PM Central. Starting on Monday, February 1st, 2016, I’m moving the show to 4:00 in the afternoon. This is to make it more accessible to my European audience, and make it easier for some of the guests I have planned to attend.
Nothing else has changed. Same crappy content. Same horrible host. Same pathetic production. You long time listeners and viewers will feel right at home.
Now for some boring details. If you subscribe to my YouTube channel you can get updates when I go on air, since I stream over YouTube. I have a chatroom in IRC, and I’d love to have you jump in and heckle along with the rest of the hooligans. While you can use an old school IRC client like MIRC to join, you don’t have to. I have a web client on my Podcast homepage. Finally, if you want to be super-duper sure you don’t miss this (and who’d want to) you can use this ICS file to add it to your schedule.
I’m looking forward to seeing the old faithful hecklers in the chatroom, as well as new blood.
|Todd O. Klindt||1/30/2016 11:05 AM||Netcast; Podcast||0|| |
|Todd O. Klindt||1/25/2016 12:17 PM||SharePoint 2016; SharePoint 2016 Preview; Sharepoint||2|| |
SharePoint 2016 is nearly upon us and it’s time for me to publish a SharePoint 2016 Builds List. This way you all have a fighting chance to keep up to date with SharePoint 2016 patches. Unlike my SharePoint 2010 and SharePoint 2013 lists, I’m not doing this as a blog post. Instead I’m doing it as a wiki page. That format makes it easier for me to update and hopefully easier for you to read. I’m also going fix how regressions are exposed for each build. Here’s a link to the new page:
I also created a corresponding Twitter account @SP2016Builds where I will tweet SharePoint 2016 Builds related information. Follow me, I’ll follow you back and make you look like a big deal on Twitter.
As always, I welcome your feedback. You can leave me a comment here, or send me a Tweet at the address above.
|Todd O. Klindt||1/22/2016 10:17 AM||Netcast||0|| |
|Todd O. Klindt||1/21/2016 3:07 PM||SharePoint 2016; SharePoint 2016 Preview||0|| |
Yesterday Microsoft released the SharePoint 2016 Release Candidate to the excitement of SharePoint nerds worldwide. Normally I would tell you all about it right here. Instead, I’m going to tell that today I started writing for the Petri family. I thought the SharePoint 2016 Release Candidate would be a great inaugural post. So, for your clicking pleasure, I present:
SharePoint 2016 Release Candidate Now Available For Download
I will be writing articles periodically for Petri, but don’t fret faithful reader, I’ll still be publishing chewy technical posts here too. If you don’t already, poke around Petri.com, there’s a lot of good content there.
|Todd O. Klindt||1/14/2016 4:55 PM||Podcast; Netcast||0|| |
|Todd O. Klindt||1/14/2016 10:50 AM||SharePoint 2013||15|| |
1/15/2016 – See Update at the bottom of this post. I’d tell you now, but I don’t want to spoil it.
In this scary world of hoverboards bursting into flames, one can never let their guard down. SharePoint security is no exception. This month’s Patch Tuesday (a big event in the Klindt household, even bigger than “liver and onions night”) has a security patch for Office and SharePoint, MS16-004 (KB3124585). It patches a nasty remote code execution bug, which I don’t have to tell you is bad. It’s even worse than missing “liver and onions night.” Security patches inherently have a sense of urgency around them, so sometimes they are published with a few, shall we say, rough edges. MS16-014 has that distinct honor.
It wasn’t too long after the patches were pushed out that people started noticing problems. Their tales of woe popped up on the TechNet forums and StackExchange. It seems people that installed KB3124585 from Windows Update, but did not install the full January 2016 SharePoint CU are having problems. A little over a year ago I published a blog post, “Don’t Enable Automatic Updates on SharePoint Servers” where I, obviously, recommended not having Windows Update automatically update your SharePoint servers, for SharePoint or Windows. This situation is exactly why. Not only does this patch break SharePoint, it cannot be uninstalled. No “get out of jail free” card to be had.
In this case, there appears to be an easy fix. From the posts in the threads referenced above, if you install the January 2016 CU for SharePoint Foundation the problem goes away. Now, of course, that puts you in the uncomfortable spot of installing a CU right after it comes out, and we all know what kind of fun that can lead to. In this case though, you don’t have many options. Cross your fingers, say your prayers, maybe help some little old ladies across the street, then double-click that EXE and hope for the best.
Good luck with all your patching. Post to either of those threads, or leave a comment here if your experience is different than what I’ve blogged.
1/15/2016 – Update
On his blog, Stefan Goßner offered a workaround for this bug. We know that installing the January 2016 CU fixes the issue. Stefan provides the individual patch from the Foundation CU that fixes it. If you install patch KB3114508 (download) on all of your servers, and run the Config Wizard, you should be good to go. This is a SharePoint patch, so like MS16-004 it cannot be uninstalled. You should test it as much as you can before you install it on your farm.
|Todd O. Klindt||1/13/2016 11:10 AM||Sharepoint; Speaking||0|| |
I’m happy to announce that I’ll be speaking at DevIntersection in Orlando this April. Of course I’ll be part of the SharePoint Intersection part, not so much the Dev Intersection part. I’ll be doing two sessions,
SharePoint & Office 365 Hybrid: Better Together and Upgrading to SharePoint 2016 Like A Pro with Jason Himmelstein. And of course I’ll be wandering around talking to as many people as I can while I’m there. Along with all the great SharePoint content, there’s a ton of big names from other products, like Scott Guthrie, Scott Hanselman, and Richard Campbell, to name a few. It’s gonna be, as the kids say, “Off the hook!” (They still say that, don’t they?)
You know what would make it even better? You know what would really tip it from “Epic” to “Legen” wait for it “dary!”? You! That’s what.
To show I’m serious, we’ll give you a little off the price if you tell them I sent you. If you Register now you can use my last name, KLINDT, as a promo code. It looks like this:
What happens then? Well, three things, really. First, you’re now registered for a cool conference. Second, you’ll get $50 dollars off your registration fee. That’s on top of any early bird discounts you might already be getting and any of the goodies you get when you register. Third, the more of you that use my code, the more likely it will be that I’ll be able to tell Jason more people like me than him. Everybody wins!
I hope to see you in Orlando in April.