This feed does not validate.
In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendations.
<title>Todd Klindt's Office 365 Admin Blog: Posts</title>
^
line 23, column 0: (4 occurrences) [help]
<div><b>Category:</b> <a onclick="OpenPopUpPage('https:\u002f\u002fwww.toddk ...
]]></description>
^
</channel>
^
<?xml version="1.0" encoding="UTF-8"?>
<!--RSS generated by Microsoft SharePoint Foundation RSS Generator on 4/26/2024 4:02:40 PM -->
<?xml-stylesheet type="text/xsl" href="/blog/_layouts/RssXslt.aspx?List=56f96349-3bb6-4087-94f4-7f95ff4ca81f" version="1.0"?>
<rss version="2.0">
<channel>
<title>Todd Klindt's Blog Posts</title>
<link>https://www.toddklindt.com/blog/Lists/Posts/AllPosts.aspx</link>
<description>RSS feed for the Posts list.</description>
<copyright>Todd Klindt</copyright>
<lastBuildDate>Fri, 26 Apr 2024 21:02:40 GMT</lastBuildDate>
<generator>Microsoft SharePoint Foundation RSS Generator</generator>
<ttl>60</ttl>
<language>en-US</language>
<image>
<title>Todd Klindt's Office 365 Admin Blog: Posts</title>
<url>https://www.toddklindt.com/blog/_layouts/images/homepage.gif</url>
<link>https://www.toddklindt.com/blog/Lists/Posts/AllPosts.aspx</link>
</image>
<item>
<title>Simplifying Client Credentials with PowerShell: Add-ClientCredential</title>
<link>https://www.toddklindt.com/blog/Lists/Posts/ViewPost.aspx?ID=900</link>
<description><![CDATA[<div><b>Body:</b> <div class="ExternalClass9C44859E60064C07911CF10A9B954B8C"><p><font size="3">If you’ve been around the block with SharePoint or Microsoft 365 administration, you know that handling client credentials can sometimes feel like juggling with fire. When I start a new engagement with a client I generally get credentials to access their tenant. Of course they immediately go into our password management tool. I also do a lot of PowerShell scripting for my clients, so I save them to the Windows Credential store too, so that I can connect with <font face="Consolas">Connect-PnPOnline</font> without having to enter them each time. And while that’s not a lot of work, I thought I could streamline it. <font size="3">That’s why I’ve put together a PowerShell command, <font face="Consolas">Add-ClientCredential</font>, that makes it a little easier.</font></font></p> <font size="3"></font> <h1>What Does <font face="Consolas">Add-ClientCredential</font> do?</h1> <font size="3"></font> <p><font size="3">In a nutshell, this PowerShell command is designed to streamline the process of adding client credentials in a SharePoint or Microsoft 365 environment. It stores your credential for <a href="https://tenant.sharepoint.com">https://tenant.sharepoint.com</a> and <a href="https://tenant-admin.sharepoint.com">https://tenant-admin.sharepoint.com</a>. If you don’t specify any credentials when you connect with <font face="Consolas">Connect-PnPOnline</font> it will look for them in the Windows Credential Store. If you have one assigned for the root of the tenant, <a href="https://tenant.sharepoint.com">https://tenant.sharepoint.com</a>, it will also use that for other sites in the tenant, like <a href="https://tenant.sharepoint.com/sites/ToddisTheBest">https://tenant.sharepoint.com/sites/ToddisTheBest</a>, if a credential is not saved for that specific site. </font></p> <font size="3"></font> <p><font size="3">Here’s a quick example:</font></p> <font size="3"></font> <blockquote> <p><font size="3"><font face="Consolas">Add-ClientCredential -TenantName "contoso" -UserName <a href="mailto:admin@contoso.com">admin@contoso.com</a></font></font></p> </blockquote> <p><font size="3">I like this method because then my password will never show up in History or a Transcript if one is running. <font size="3">Since we didn’t pass it a password, it will prompt you for one. </font>Then it will create credential entries for <a href="https://contoso.sharepoint.com">https://contoso.sharepoint.com</a>, <a href="http://contoso.sharepoint.com">http://contoso.sharepoint.com</a>, and <a href="https://contoso-admin.sharepoint.com">https://contoso-admin.sharepoint.com</a></font></p> <p><font size="3">To pass it a password, do it like this:</font></p> <div><font size="3"> <blockquote> <p><font face="Consolas">Add-ClientCredential -TenantName "contoso" -UserName </font><a href="mailto:admin@contoso.com"><font face="Consolas">admin@contoso.com</font></a><font face="Consolas"> -Password (ConvertTo-SecureString "YourPassword” <br /> -AsPlainText -Force)</font></p> </blockquote> <p>Keep in mind that will show up in plain text in PowerShell’s <font face="Consolas">Get-History</font>, or the Transcript file, if you have that running.</p> <p>I built in some smarts so that if there is already a credential stored for “Contoso” it will let you know and ask you if you want to overwrite it. </p> <p>If you want to get super fancy you can add the <font face="Consolas">–TestCredential</font> switch which will test the credentials you gave it by logging in with them. All of this is available if you run <font face="Consolas">help Add-ClientCredential –Examples.</font></p> <p>In the background this function uses <a href="https://pnp.github.io/powershell/cmdlets/Add-PnPStoredCredential.html"><font face="Consolas">Add-PnPStoredCredential</font></a> to store the credentials for you. It adds them for the root of the tenant, and the –admin URL.</p> </font></div> <font size="3"></font> <h1>How to Get Started</h1> <font size="3"></font> <p><font size="3">To get your hands on this little beauty, head over to <a href="https://github.com/ToddKlindt/PowerShell">my GitHub repository</a>. You can download <a href="https://github.com/ToddKlindt/PowerShell/blob/master/addclientcreds.psm1"><font face="Consolas">addclientcreds.psm1</font></a> itself, or clone the whole repo. Use <font face="Consolas">Import-Module</font> to import it into your PowerShell host and you’re ready to go.</font></p> <font size="3"></font> <h1>Wrapping Up</h1> <font size="3"></font> <p><font size="3"><font face="Consolas">addclientcreds.psm1</font> is my attempt to put a little more simplicity and sanity into the world of SharePoint and Microsoft 365 administration. I hope you find it as useful as I do. As always, I welcome your feedback and questions. Drop a comment below or shoot me a message on Twitter <a href="https://twitter.com/ToddKlindt">@ToddKlindt</a></font><font size="3">.</font></p> <p><font size="3">tk</font></p> <p><font size="3">ShortURL: <a href="/PoshAddClientCreds">https://www.toddklindt.com/PoshAddClientCreds</a> </font></p></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('https:\u002f\u002fwww.toddklindt.com\u002fblog\u002f_layouts\u002flistform.aspx?PageType=4\u0026ListId={8221A7C5-26F5-4CA7-BCD5-8B626A7C6AB8}\u0026ID=8\u0026RootFolder=*', RefreshPage); return false;" href="https://www.toddklindt.com/blog/_layouts/listform.aspx?PageType=4&ListId={8221A7C5-26F5-4CA7-BCD5-8B626A7C6AB8}&ID=8&RootFolder=*">PowerShell</a>; <a onclick="OpenPopUpPage('https:\u002f\u002fwww.toddklindt.com\u002fblog\u002f_layouts\u002flistform.aspx?PageType=4\u0026ListId={8221A7C5-26F5-4CA7-BCD5-8B626A7C6AB8}\u0026ID=24\u0026RootFolder=*', RefreshPage); return false;" href="https://www.toddklindt.com/blog/_layouts/listform.aspx?PageType=4&ListId={8221A7C5-26F5-4CA7-BCD5-8B626A7C6AB8}&ID=24&RootFolder=*">Office 365</a>; <a onclick="OpenPopUpPage('https:\u002f\u002fwww.toddklindt.com\u002fblog\u002f_layouts\u002flistform.aspx?PageType=4\u0026ListId={8221A7C5-26F5-4CA7-BCD5-8B626A7C6AB8}\u0026ID=29\u0026RootFolder=*', RefreshPage); return false;" href="https://www.toddklindt.com/blog/_layouts/listform.aspx?PageType=4&ListId={8221A7C5-26F5-4CA7-BCD5-8B626A7C6AB8}&ID=29&RootFolder=*">PnP</a></div>
<div><b># Comments:</b> <a onclick="OpenPopUpPage('https:\u002f\u002fwww.toddklindt.com\u002fblog\u002f_layouts\u002flistform.aspx?PageType=4\u0026ListId={9632BBFE-1432-4B68-A96B-E6B96499F2DA}\u0026ID=0\u0026RootFolder=*', RefreshPage); return false;" href="https://www.toddklindt.com/blog/_layouts/listform.aspx?PageType=4&ListId={9632BBFE-1432-4B68-A96B-E6B96499F2DA}&ID=0&RootFolder=*"></a></div>
]]></description>
<author>Todd O. Klindt</author>
<category>PowerShell; Office 365; PnP</category>
<pubDate>Wed, 27 Sep 2023 14:36:50 GMT</pubDate>
<guid isPermaLink="true">https://www.toddklindt.com/blog/Lists/Posts/ViewPost.aspx?ID=900</guid>
</item>
</channel>
</rss>