<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic VPN User Provisioning with API in Network Platform API</title>
    <link>https://community.cisco.com/t5/network-platform-api/vpn-user-provisioning-with-api/m-p/5449002#M7634</link>
    <description>&lt;P&gt;Happy Friday everyone,&lt;BR /&gt;Boss tasked me with going through our Anyconnect authorized users on Meraki, verifying who is inactive in AD, and removing inactive users from Anyconnect.  While SCIM would be ideal, I'm not finding any SCIM availability for AnyConnect Provisioning.  So far I'm getting the information I want from the Invoke-RestMethod, and I'm able to then query those users against AD to confirm Enabled -eq True.  My final hurdle is to take the list of disabled users, get their id from the Meraki response, and send a DELETE invoke-RestMethod to delete the disabled users via the "&lt;SPAN class=""&gt;&lt;SPAN&gt;{{baseUrl}}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;/networks/:networkId/merakiAuthUsers/:merakiAuthUserId" endpoint.&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;$AllUsers = @()&lt;BR /&gt;foreach ($NetworkID in $NetworkIDs) {&lt;BR /&gt;$Users = Invoke-RestMethod -Method Get -Uri "https://api.meraki.com/api/v1/networks/$NetworkID/merakiAuthUsers" -Headers $headers&lt;BR /&gt;$AllUsers += $Users&lt;BR /&gt;}&lt;BR /&gt;$InactiveUsers = foreach ($User in $AllUsers) {&lt;BR /&gt;$ADUser = Get-ADUser -Filter "mail -eq '$($User.email)'" -Properties Enabled&lt;BR /&gt;if ($ADUser -and !$ADUser.Enabled)&lt;BR /&gt;}&lt;/PRE&gt;&lt;P&gt; Any tips or tricks would be greatly appreciated!&lt;/P&gt;</description>
    <pubDate>Fri, 08 Nov 2024 17:16:56 GMT</pubDate>
    <dc:creator>gingerwon</dc:creator>
    <dc:date>2024-11-08T17:16:56Z</dc:date>
    <item>
      <title>VPN User Provisioning with API</title>
      <link>https://community.cisco.com/t5/network-platform-api/vpn-user-provisioning-with-api/m-p/5449002#M7634</link>
      <description>&lt;P&gt;Happy Friday everyone,&lt;BR /&gt;Boss tasked me with going through our Anyconnect authorized users on Meraki, verifying who is inactive in AD, and removing inactive users from Anyconnect.  While SCIM would be ideal, I'm not finding any SCIM availability for AnyConnect Provisioning.  So far I'm getting the information I want from the Invoke-RestMethod, and I'm able to then query those users against AD to confirm Enabled -eq True.  My final hurdle is to take the list of disabled users, get their id from the Meraki response, and send a DELETE invoke-RestMethod to delete the disabled users via the "&lt;SPAN class=""&gt;&lt;SPAN&gt;{{baseUrl}}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;/networks/:networkId/merakiAuthUsers/:merakiAuthUserId" endpoint.&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;$AllUsers = @()&lt;BR /&gt;foreach ($NetworkID in $NetworkIDs) {&lt;BR /&gt;$Users = Invoke-RestMethod -Method Get -Uri "https://api.meraki.com/api/v1/networks/$NetworkID/merakiAuthUsers" -Headers $headers&lt;BR /&gt;$AllUsers += $Users&lt;BR /&gt;}&lt;BR /&gt;$InactiveUsers = foreach ($User in $AllUsers) {&lt;BR /&gt;$ADUser = Get-ADUser -Filter "mail -eq '$($User.email)'" -Properties Enabled&lt;BR /&gt;if ($ADUser -and !$ADUser.Enabled)&lt;BR /&gt;}&lt;/PRE&gt;&lt;P&gt; Any tips or tricks would be greatly appreciated!&lt;/P&gt;</description>
      <pubDate>Fri, 08 Nov 2024 17:16:56 GMT</pubDate>
      <guid>https://community.cisco.com/t5/network-platform-api/vpn-user-provisioning-with-api/m-p/5449002#M7634</guid>
      <dc:creator>gingerwon</dc:creator>
      <dc:date>2024-11-08T17:16:56Z</dc:date>
    </item>
    <item>
      <title>Re: VPN User Provisioning with API</title>
      <link>https://community.cisco.com/t5/network-platform-api/vpn-user-provisioning-with-api/m-p/5449003#M7635</link>
      <description>&lt;P&gt;Going completely sideways; do you use Office 365/Entra ID?  Have you considered authenticating directly against that instead?&lt;/P&gt;&lt;P&gt;&lt;A href="https://documentation.meraki.com/MX/Client_VPN/AnyConnect_on_the_MX_Appliance/AnyConnect_Azure_AD_SAML_Configuration" target="_blank" rel="noopener nofollow noreferrer"&gt;https://documentation.meraki.com/MX/Client_VPN/AnyConnect_on_the_MX_Appliance/AnyConnect_Azure_AD_SAML_Configuration&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Nov 2024 09:56:15 GMT</pubDate>
      <guid>https://community.cisco.com/t5/network-platform-api/vpn-user-provisioning-with-api/m-p/5449003#M7635</guid>
      <dc:creator>Philip D'Ath</dc:creator>
      <dc:date>2024-11-14T09:56:15Z</dc:date>
    </item>
    <item>
      <title>Re: VPN User Provisioning with API</title>
      <link>https://community.cisco.com/t5/network-platform-api/vpn-user-provisioning-with-api/m-p/5449004#M7636</link>
      <description>&lt;P&gt;Thanks for the reply Philip!&lt;BR /&gt;&lt;BR /&gt;We have/are considering this, but didn't think SSO would automatically deprovision disabled users from the Meraki authenticated users list.  Maybe this is a much simpler solution, I'll try to do some testing today.  Thanks again!&lt;/P&gt;</description>
      <pubDate>Thu, 14 Nov 2024 14:54:37 GMT</pubDate>
      <guid>https://community.cisco.com/t5/network-platform-api/vpn-user-provisioning-with-api/m-p/5449004#M7636</guid>
      <dc:creator>gingerwon</dc:creator>
      <dc:date>2024-11-14T14:54:37Z</dc:date>
    </item>
  </channel>
</rss>

