streamlit-msal
Add your description here
Decision gist · record as of 2026-08-14
Yes, with conditions. Install if you need basic Azure AD authentication in a Streamlit app and can accept pop-up-based sign-in. The low install friction and zero runtime dependencies make it lightweight. However, dormant maintenance and an undefined license are concerns—verify compatibility with your Streamlit version and clarify the license terms with the maintainer before using in production. Not suitable if you need robust token refresh, non-pop-up flows, or ongoing security updates.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires an Azure app registration with OpenID Connect configured and a valid client_id and authority URL.
- Low install friction with no runtime dependencies.
- Dormant maintenance status since latest release on 2023-11-24; the repository remains active but receives no ongoing development.
License · maintenance · safety
(unclear) — License treatment is unclear; the package metadata does not declare a license, leaving terms of use and redistribution rights undefined.
last release 2023-11-24 (994 days) · last repo commit 2023-11-24 · 36 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 111,643 downloads/mo, #12,407 on PyPI
Alternatives
Verify before relying
pip install streamlit-msal
import streamlit as st
from streamlit_msal import Msal
auth_data = Msal.initialize_ui(
client_id="your-client-id",
authority="https://login.microsoftonline.com/",
scopes=[]
)
if auth_data:
st.write(f"Hello {auth_data['account']['name']}!")- Whether pop-up-based authentication works reliably across all Streamlit deployment environments (cloud, containers, etc.)
- Current compatibility with recent Streamlit versions and whether the dormant status indicates unresolved breaking changes
- Whether the library handles token refresh and expiration gracefully in long-running Streamlit sessions
What it is and what it does
streamlit-msal wraps Microsoft's Authentication Library to bring Azure AD authentication into Streamlit apps. It provides two integration modes: a pre-built UI component that handles sign-in, sign-out, and token management in the sidebar, or a headless API for building custom authentication flows. The library relies on browser pop-ups for user interaction, which keeps setup simple but may not suit all deployment scenarios.
The package is designed for straightforward use cases where Azure AD integration is the primary authentication need. It extracts user identity (name, username, account ID) and access tokens from the authentication response, making them available to your Streamlit code. No runtime dependencies means lightweight installation, but the dormant maintenance status and lack of a declared license introduce uncertainty about long-term support and legal clarity.
Use it for
- Add Azure AD sign-in to internal Streamlit dashboards without building custom OAuth flows.
- Protect Streamlit apps with corporate identity verification for enterprise deployments.
- Extract user identity and access tokens to authorize downstream API calls on behalf of authenticated users.
- Build quick prototypes that require Microsoft account authentication without external auth infrastructure.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, with conditions.
Install if you need basic Azure AD authentication in a Streamlit app and can accept pop-up-based sign-in. The low install friction and zero runtime dependencies make it lightweight. However, dormant maintenance and an undefined license are concerns—verify compatibility with your Streamlit version and clarify the license terms with the maintainer before using in production. Not suitable if you need robust token refresh, non-pop-up flows, or ongoing security updates.
Install
streamlit-msal on PyPI
Before you install
Low install friction with no runtime dependencies. Dormant maintenance status since latest release on 2023-11-24; the repository remains active but receives no ongoing development.
Requires an Azure app registration with OpenID Connect configured and a valid client_id and authority URL.
License in practice
License treatment is unclear; the package metadata does not declare a license, leaving terms of use and redistribution rights undefined.
Quickstart
pip install streamlit-msal
import streamlit as st
from streamlit_msal import Msal
auth_data = Msal.initialize_ui(
client_id="your-client-id",
authority="https://login.microsoftonline.com/",
scopes=[]
)
if auth_data:
st.write(f"Hello {auth_data['account']['name']}!")
Verify before relying
- Whether pop-up-based authentication works reliably across all Streamlit deployment environments (cloud, containers, etc.)
- Current compatibility with recent Streamlit versions and whether the dormant status indicates unresolved breaking changes
- Whether the library handles token refresh and expiration gracefully in long-running Streamlit sessions
Package facts
| License | Not declared unclear |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Dormant 994 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 111,643 / month, #12,407 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: streamlit_msal-0.2.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “streamlit azure authentication”
- streamlit-msalAdds Microsoft Authentication Library (MSAL) integration to Streamlit…
- streamlit-authenticatorAdds user authentication and access control to Streamlit…
- streamlit-cookies-controllerProvides read, write, and delete operations on browser cookies from a…
Give your agent the search over MCP, or paste the wish link into any chat.
More Security packages
Provides Python bindings to the FreeDesktop.org Secret Service API for securely storing and retrieving passwords and secrets through GNOME Keyring, KWallet, or KeePassXC.
MSAL for Python handles OAuth2 and OpenID Connect authentication with Microsoft identity services, managing token acquisition, caching, and refresh for applications integrating with Microsoft Entra ID, Microsoft Accounts, and Azure AD B2C.
joserfc implements JOSE standards (JWS, JWE, JWK, JWT, and related RFCs) for signing, encrypting, and managing JSON-based cryptographic tokens in Python.
Authlib provides a complete implementation of OAuth 1.0, OAuth 2.0, and OpenID Connect 1.0 for building both authentication clients and servers, with built-in support for JWS, JWK, JWA, and JWT standards.
Provides low-level CFFI bindings to the official Argon2 password hashing algorithm for use by libraries and applications that need direct access to Argon2 without higher-level abstractions.
ADAL for Python authenticates applications with Azure Active Directory to obtain tokens for accessing Azure AD-protected resources.
Install only if maintaining existing code that already depends on it, and plan a migration.
See also identity · streamlit-authenticator · microsoft-agents-authentication-msal · extra-streamlit-components · streamlit-js-eval · streamlit-sortables · azure-identity · django-auth-adfs