skillfed

artifacts-keyring

"Automatically retrieve credentials for Azure Artifacts."

artifacts-keyring v1.0.0 1.3M downloads/30d#4,099 on PyPI44
Permissive license "MIT" Active released

What it is and what it does

artifacts-keyring is a thin wrapper around Microsoft's artifacts-credprovider that extends the Python keyring library to handle authentication with Azure Artifacts feeds. Once installed, it automatically integrates with pip and twine, allowing you to publish packages to or install packages from Azure DevOps-hosted package repositories without manually managing credentials.

The package works by hooking into keyring's credential lookup mechanism, so pip and twine discover and use it automatically. It supports environment variable configuration for non-interactive scenarios and can operate in different deployment contexts, including Docker. The underlying credential provider handles the complexity of Azure authentication; this package simply makes it available to Python's standard packaging tools.

Use it for:

  • Publishing internal Python packages to an Azure Artifacts feed using twine without hardcoding credentials.
  • Installing private packages from an Azure DevOps feed in CI/CD pipelines with automatic credential discovery.
  • Setting up local development environments to consume packages from Azure Artifacts feeds without manual token management.
  • Running pip or twine in non-interactive environments (e.g., containers) by configuring ARTIFACTS_KEYRING_NONINTERACTIVE_MODE.
  • Integrating Azure Artifacts authentication into existing Python workflows that already use keyring for credential storage.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides automatic credential retrieval for Azure Artifacts feeds, integrating with keyring to enable pip and twine to authenticate with Azure DevOps package repositories.

Yes, if you publish or consume Python packages from Azure Artifacts feeds within Azure DevOps. The package is actively maintained, has no known vulnerabilities, and eliminates manual credential management for pip and twine. Install it only if you actually use Azure Artifacts; it adds no value for other package repositories.

Install

artifacts-keyring on PyPI

pip

pip install artifacts-keyring

uv

uv add artifacts-keyring

poetry

poetry add artifacts-keyring

Installing artifacts-keyring

Before you install

Medium install friction due to compiled wheels for multiple Python versions (3.9–3.13) and platforms; if no matching wheel is found, the .NET runtime 8.0.X or later is required. Repository is active with recent commits (2026-08-10) and has been maintained since its initial release in 2019-08-02.

License in practice

Licensed under MIT (permissive), so you may use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.

Quickstart

pip install artifacts-keyring

# Then use with pip:
pip install <package_name> --index-url https://pkgs.dev.azure.com/<org>/_packaging/<feed>/pypi/simple

# Or with twine:
twine upload --repository-url https://pkgs.dev.azure.com/<org>/_packaging/<feed>/pypi/upload <dist>

Requires Python 3.9 or higher, pip 19.2 or higher, and twine 1.13.0 or higher. If a platform-specific wheel is unavailable, .NET runtime 8.0.X or later is required.

Verify before relying

  • Whether the package works with Azure Artifacts feeds outside of Azure DevOps (e.g., standalone Azure Artifacts instances).
  • Performance impact or latency when retrieving credentials from the underlying artifacts-credprovider on first use.
  • Compatibility with alternative credential storage backends beyond the default keyring implementation.

Package facts

License "MIT" (permissive)
Python support supports the current Python release (>=3.9)
Install friction medium — platform-specific wheel
Runtime dependencies 2 — keyring, requests
Maintenance actively maintained — 366 days since the last release
Last repo commit
First released
Downloads 1,293,421/month — #4,099 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: artifacts_keyring-1.0.0-cp310-cp310-macosx_10_15_x86_64.whl; artifacts_keyring-1.0.0-cp310-cp310-macosx_11_0_arm64.whl; artifacts_keyring-1.0.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; artifacts_keyring-1.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; artifacts_keyring-1.0.0-cp310-cp310-win_amd64.whl; artifacts_keyring-1.0.0-cp311-cp311-macosx_10_15_x86_64.whl; artifacts_keyring-1.0.0-cp311-cp311-macosx_11_0_arm64.whl; artifacts_keyring-1.0.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; artifacts_keyring-1.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; artifacts_keyring-1.0.0-cp311-cp311-win_amd64.whl; artifacts_keyring-1.0.0-cp312-cp312-macosx_10_15_x86_64.whl; artifacts_keyring-1.0.0-cp312-cp312-macosx_11_0_arm64.whl; artifacts_keyring-1.0.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; artifacts_keyring-1.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; artifacts_keyring-1.0.0-cp312-cp312-win_amd64.whl; artifacts_keyring-1.0.0-cp313-cp313-macosx_10_15_x86_64.whl; artifacts_keyring-1.0.0-cp313-cp313-macosx_11_0_arm64.whl; artifacts_keyring-1.0.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; artifacts_keyring-1.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; artifacts_keyring-1.0.0-cp313-cp313-win_amd64.whl

Development Status :: 3 - AlphaIntended Audience :: DevelopersOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9

Tags

azure artifacts authenticationazure devops package credentialskeyring azure integrationpip azure artifactstwine azure devopsazure credential provider pythonazure package feed auth
azure-devopscredential-managementpackage-publishing

More Cryptography packages