What Changed

Comprehensive reliability improvements across 17 IPinfo data connectors addressing deployment stability, runtime configuration, and multi-workspace support.

Security Impact (Visibility & Fidelity)

Enhanced deployment reliability ensures consistent IPinfo threat intelligence ingestion:

  • Previous State: Function App startup failures due to missing native dependencies (cffi) and inconsistent DCR workspace validation logic
  • Current State: Pinned Azure Functions runtime v4 with Python 3.11, added missing cffi dependency, and standardized DCR handling across all connectors
  • Risk Mitigation: Eliminates deployment failures that could result in gaps in IP reputation and geolocation intelligence

Technical Improvements

  • Runtime Stability: Pinned Azure Functions runtime to v4 with verified Python 3.11 compatibility
  • Dependency Management: Added missing cffi native dependency to requirements.txt for reliable Function App publishing
  • Multi-Workspace Support: Standardized DCR workspace validation and creation logic across all 17 IPinfo connectors
  • Performance Optimization: Updated max_records from 100 (testing) to 10000 (production) for improved data throughput

Affected Connectors

17 IPinfo data connectors updated: ASN, Abuse, Carrier, Company, Country ASN, Domain, IP Location, IP Location Extended, Privacy, Privacy Extended, RIRWHOIS, RWHOIS, and 5 WHOIS variants (ASN, MNT, NET, ORG, POC).

Each connector now includes consistent DCR handling logic supporting multi-workspace deployments and improved ARM template deployment URLs using aka.ms shortlinks for marketplace readiness.

Affected Files

Solutions/IPinfo/Data Connectors/ASN/AzureFunctionIPinfoASN/constants.py
Solutions/IPinfo/Data Connectors/ASN/AzureFunctionIPinfoASN/main.py
Solutions/IPinfo/Data Connectors/ASN/AzureFunctionIPinfoASN/utils.py
Solutions/IPinfo/Data Connectors/ASN/azuredeploy_Connector_IPinfo_ASN_AzureFunction.json
Solutions/IPinfo/Data Connectors/ASN/host.json
Solutions/IPinfo/Data Connectors/ASN/requirements.txt
Solutions/IPinfo/Data Connectors/Abuse/AzureFunctionIPinfoAbuse/constants.py
Solutions/IPinfo/Data Connectors/Abuse/AzureFunctionIPinfoAbuse/main.py
Solutions/IPinfo/Data Connectors/Abuse/AzureFunctionIPinfoAbuse/utils.py
Solutions/IPinfo/Data Connectors/Abuse/azuredeploy_Connector_IPinfo_Abuse_AzureFunction.json
Solutions/IPinfo/Data Connectors/Abuse/host.json
Solutions/IPinfo/Data Connectors/Abuse/requirements.txt
Solutions/IPinfo/Data Connectors/Carrier/AzureFunctionIPinfoCarrier/constants.py
Solutions/IPinfo/Data Connectors/Carrier/AzureFunctionIPinfoCarrier/main.py
Solutions/IPinfo/Data Connectors/Carrier/AzureFunctionIPinfoCarrier/utils.py
Solutions/IPinfo/Data Connectors/Carrier/azuredeploy_Connector_IPinfo_Carrier_AzureFunction.json
Solutions/IPinfo/Data Connectors/Carrier/host.json
Solutions/IPinfo/Data Connectors/Carrier/requirements.txt
Solutions/IPinfo/Data Connectors/Company/AzureFunctionIPinfoCompany/constants.py
Solutions/IPinfo/Data Connectors/Company/AzureFunctionIPinfoCompany/main.py
Solutions/IPinfo/Data Connectors/Company/AzureFunctionIPinfoCompany/utils.py
Solutions/IPinfo/Data Connectors/Company/azuredeploy_Connector_IPinfo_Company_AzureFunction.json
Solutions/IPinfo/Data Connectors/Company/host.json
Solutions/IPinfo/Data Connectors/Company/requirements.txt
Solutions/IPinfo/Data Connectors/Country ASN/AzureFunctionIPinfoCountryASN/constants.py
Solutions/IPinfo/Data Connectors/Country ASN/AzureFunctionIPinfoCountryASN/main.py
Solutions/IPinfo/Data Connectors/Country ASN/AzureFunctionIPinfoCountryASN/utils.py
Solutions/IPinfo/Data Connectors/Country ASN/azuredeploy_Connector_IPinfo_Country_AzureFunction.json
Solutions/IPinfo/Data Connectors/Country ASN/host.json
Solutions/IPinfo/Data Connectors/Country ASN/requirements.txt
Solutions/IPinfo/Data Connectors/Domain/AzureFunctionIPinfoDomain/constants.py
Solutions/IPinfo/Data Connectors/Domain/AzureFunctionIPinfoDomain/main.py
Solutions/IPinfo/Data Connectors/Domain/AzureFunctionIPinfoDomain/utils.py
Solutions/IPinfo/Data Connectors/Domain/azuredeploy_Connector_IPinfo_Domain_AzureFunction.json
Solutions/IPinfo/Data Connectors/Domain/host.json
Solutions/IPinfo/Data Connectors/Domain/requirements.txt
Solutions/IPinfo/Data Connectors/Iplocation Extended/AzureFunctionIPinfoIplocationExtended/constants.py
Solutions/IPinfo/Data Connectors/Iplocation Extended/AzureFunctionIPinfoIplocationExtended/main.py
Solutions/IPinfo/Data Connectors/Iplocation Extended/AzureFunctionIPinfoIplocationExtended/utils.py
Solutions/IPinfo/Data Connectors/Iplocation Extended/azuredeploy_Connector_IPinfo_Iplocation_Extended_AzureFunction.json
Solutions/IPinfo/Data Connectors/Iplocation Extended/host.json
Solutions/IPinfo/Data Connectors/Iplocation Extended/requirements.txt
Solutions/IPinfo/Data Connectors/Iplocation/AzureFunctionIPinfoIplocation/constants.py
Solutions/IPinfo/Data Connectors/Iplocation/AzureFunctionIPinfoIplocation/main.py
Solutions/IPinfo/Data Connectors/Iplocation/AzureFunctionIPinfoIplocation/utils.py
Solutions/IPinfo/Data Connectors/Iplocation/azuredeploy_Connector_IPinfo_Iplocation_AzureFunction.json
Solutions/IPinfo/Data Connectors/Iplocation/host.json
Solutions/IPinfo/Data Connectors/Iplocation/requirements.txt
Solutions/IPinfo/Data Connectors/Privacy Extended/AzureFunctionIPinfoPrivacyExtended/constants.py
Solutions/IPinfo/Data Connectors/Privacy Extended/AzureFunctionIPinfoPrivacyExtended/main.py
Solutions/IPinfo/Data Connectors/Privacy Extended/AzureFunctionIPinfoPrivacyExtended/utils.py
Solutions/IPinfo/Data Connectors/Privacy Extended/azuredeploy_Connector_IPinfo_Privacy_Extended_AzureFunction.json
Solutions/IPinfo/Data Connectors/Privacy Extended/host.json
Solutions/IPinfo/Data Connectors/Privacy Extended/requirements.txt
Solutions/IPinfo/Data Connectors/Privacy/AzureFunctionIPinfoPrivacy/constants.py
Solutions/IPinfo/Data Connectors/Privacy/AzureFunctionIPinfoPrivacy/main.py
Solutions/IPinfo/Data Connectors/Privacy/AzureFunctionIPinfoPrivacy/utils.py
Solutions/IPinfo/Data Connectors/Privacy/azuredeploy_Connector_IPinfo_Privacy_AzureFunction.json
Solutions/IPinfo/Data Connectors/Privacy/host.json
Solutions/IPinfo/Data Connectors/Privacy/requirements.txt
Solutions/IPinfo/Data Connectors/RIRWHOIS/AzureFunctionIPinfoRIRWHOIS/constants.py
Solutions/IPinfo/Data Connectors/RIRWHOIS/AzureFunctionIPinfoRIRWHOIS/main.py
Solutions/IPinfo/Data Connectors/RIRWHOIS/AzureFunctionIPinfoRIRWHOIS/utils.py
Solutions/IPinfo/Data Connectors/RIRWHOIS/azuredeploy_Connector_IPinfo_RIRWHOIS_AzureFunction.json
Solutions/IPinfo/Data Connectors/RIRWHOIS/host.json
Solutions/IPinfo/Data Connectors/RIRWHOIS/requirements.txt
Solutions/IPinfo/Data Connectors/RWHOIS/AzureFunctionIPinfoRWHOIS/constants.py
Solutions/IPinfo/Data Connectors/RWHOIS/AzureFunctionIPinfoRWHOIS/main.py
Solutions/IPinfo/Data Connectors/RWHOIS/AzureFunctionIPinfoRWHOIS/utils.py
Solutions/IPinfo/Data Connectors/RWHOIS/azuredeploy_Connector_IPinfo_RWHOIS_AzureFunction.json
Solutions/IPinfo/Data Connectors/RWHOIS/host.json
Solutions/IPinfo/Data Connectors/RWHOIS/requirements.txt
Solutions/IPinfo/Data Connectors/WHOIS ASN/AzureFunctionIPinfoWHOISASN/constants.py
Solutions/IPinfo/Data Connectors/WHOIS ASN/AzureFunctionIPinfoWHOISASN/main.py
Solutions/IPinfo/Data Connectors/WHOIS ASN/AzureFunctionIPinfoWHOISASN/utils.py
Solutions/IPinfo/Data Connectors/WHOIS ASN/azuredeploy_Connector_IPinfo_WHOIS_ASN_AzureFunction.json
Solutions/IPinfo/Data Connectors/WHOIS ASN/host.json
Solutions/IPinfo/Data Connectors/WHOIS ASN/requirements.txt
Solutions/IPinfo/Data Connectors/WHOIS MNT/AzureFunctionIPinfoWHOISMNT/constants.py
Solutions/IPinfo/Data Connectors/WHOIS MNT/AzureFunctionIPinfoWHOISMNT/main.py
Solutions/IPinfo/Data Connectors/WHOIS MNT/AzureFunctionIPinfoWHOISMNT/utils.py
Solutions/IPinfo/Data Connectors/WHOIS MNT/azuredeploy_Connector_IPinfo_WHOIS_MNT_AzureFunction.json
Solutions/IPinfo/Data Connectors/WHOIS MNT/host.json
Solutions/IPinfo/Data Connectors/WHOIS MNT/requirements.txt
Solutions/IPinfo/Data Connectors/WHOIS NET/AzureFunctionIPinfoWHOISNET/constants.py
Solutions/IPinfo/Data Connectors/WHOIS NET/AzureFunctionIPinfoWHOISNET/main.py
Solutions/IPinfo/Data Connectors/WHOIS NET/AzureFunctionIPinfoWHOISNET/utils.py
Solutions/IPinfo/Data Connectors/WHOIS NET/azuredeploy_Connector_IPinfo_WHOIS_NET_AzureFunction.json
Solutions/IPinfo/Data Connectors/WHOIS NET/host.json
Solutions/IPinfo/Data Connectors/WHOIS NET/requirements.txt
Solutions/IPinfo/Data Connectors/WHOIS ORG/AzureFunctionIPinfoWHOISORG/constants.py
Solutions/IPinfo/Data Connectors/WHOIS ORG/AzureFunctionIPinfoWHOISORG/main.py
Solutions/IPinfo/Data Connectors/WHOIS ORG/AzureFunctionIPinfoWHOISORG/utils.py
Solutions/IPinfo/Data Connectors/WHOIS ORG/azuredeploy_Connector_IPinfo_WHOIS_ORG_AzureFunction.json
Solutions/IPinfo/Data Connectors/WHOIS ORG/host.json
Solutions/IPinfo/Data Connectors/WHOIS ORG/requirements.txt
Solutions/IPinfo/Data Connectors/WHOIS POC/AzureFunctionIPinfoWHOISPOC/constants.py
Solutions/IPinfo/Data Connectors/WHOIS POC/AzureFunctionIPinfoWHOISPOC/main.py
Solutions/IPinfo/Data Connectors/WHOIS POC/AzureFunctionIPinfoWHOISPOC/utils.py
Solutions/IPinfo/Data Connectors/WHOIS POC/azuredeploy_Connector_IPinfo_WHOIS_POC_AzureFunction.json
Solutions/IPinfo/Data Connectors/WHOIS POC/host.json
Solutions/IPinfo/Data Connectors/WHOIS POC/requirements.txt
(packaging artefacts: 3.0.2.zip, IPInfoWHOISASNConn.zip, IPifnoASNConn.zip, IPinfoASNConn.zip, IPinfoAbuseConn.zip, IPinfoCarrierConn.zip, IPinfoCompanyConn.zip, IPinfoCountryConn.zip, IPinfoDomainConn.zip, IPinfoIplocationConn.zip, IPinfoIplocationExtendedConn.zip, IPinfoPrivacyConn.zip, IPinfoPrivacyExtendedConn.zip, IPinfoRIRWHOISConn.zip, IPinfoRWHOISConn.zip, IPinfoWHOISMNTConn.zip, IPinfoWHOISNETConn.zip, IPinfoWHOISORGConn.zip, IPinfoWHOISPOCConn.zip, ReleaseNotes.md, Solution_IPinfo.json, createUiDefinition.json, mainTemplate.json)