Browse Source

Fixed other places as well which had incorrect response status codes.

pull/13729/head
Adit Soni 2 months ago
parent
commit
f5e7089cb3
  1. 4
      fastapi/security/api_key.py
  2. 4
      fastapi/security/oauth2.py
  3. 4
      fastapi/security/open_id_connect_url.py
  4. 2
      tests/test_security_api_key_cookie.py
  5. 2
      tests/test_security_api_key_cookie_description.py
  6. 2
      tests/test_security_api_key_header.py
  7. 2
      tests/test_security_api_key_header_description.py
  8. 2
      tests/test_security_api_key_query.py
  9. 2
      tests/test_security_api_key_query_description.py
  10. 2
      tests/test_security_oauth2.py
  11. 2
      tests/test_security_openid_connect.py
  12. 2
      tests/test_security_openid_connect_description.py

4
fastapi/security/api_key.py

@ -4,7 +4,7 @@ from fastapi.openapi.models import APIKey, APIKeyIn
from fastapi.security.base import SecurityBase
from starlette.exceptions import HTTPException
from starlette.requests import Request
from starlette.status import HTTP_403_FORBIDDEN
from starlette.status import HTTP_401_UNAUTHORIZED
from typing_extensions import Annotated, Doc
@ -14,7 +14,7 @@ class APIKeyBase(SecurityBase):
if not api_key:
if auto_error:
raise HTTPException(
status_code=HTTP_403_FORBIDDEN, detail="Not authenticated"
status_code=HTTP_401_UNAUTHORIZED, detail="Not authenticated"
)
return None
return api_key

4
fastapi/security/oauth2.py

@ -7,7 +7,7 @@ from fastapi.param_functions import Form
from fastapi.security.base import SecurityBase
from fastapi.security.utils import get_authorization_scheme_param
from starlette.requests import Request
from starlette.status import HTTP_401_UNAUTHORIZED, HTTP_403_FORBIDDEN
from starlette.status import HTTP_401_UNAUTHORIZED
# TODO: import from typing when deprecating Python 3.9
from typing_extensions import Annotated, Doc
@ -381,7 +381,7 @@ class OAuth2(SecurityBase):
if not authorization:
if self.auto_error:
raise HTTPException(
status_code=HTTP_403_FORBIDDEN, detail="Not authenticated"
status_code=HTTP_401_UNAUTHORIZED, detail="Not authenticated"
)
else:
return None

4
fastapi/security/open_id_connect_url.py

@ -4,7 +4,7 @@ from fastapi.openapi.models import OpenIdConnect as OpenIdConnectModel
from fastapi.security.base import SecurityBase
from starlette.exceptions import HTTPException
from starlette.requests import Request
from starlette.status import HTTP_403_FORBIDDEN
from starlette.status import HTTP_401_UNAUTHORIZED
from typing_extensions import Annotated, Doc
@ -77,7 +77,7 @@ class OpenIdConnect(SecurityBase):
if not authorization:
if self.auto_error:
raise HTTPException(
status_code=HTTP_403_FORBIDDEN, detail="Not authenticated"
status_code=HTTP_401_UNAUTHORIZED, detail="Not authenticated"
)
else:
return None

2
tests/test_security_api_key_cookie.py

@ -32,7 +32,7 @@ def test_security_api_key():
def test_security_api_key_no_key():
client = TestClient(app)
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_api_key_cookie_description.py

@ -32,7 +32,7 @@ def test_security_api_key():
def test_security_api_key_no_key():
client = TestClient(app)
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_api_key_header.py

@ -33,7 +33,7 @@ def test_security_api_key():
def test_security_api_key_no_key():
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_api_key_header_description.py

@ -33,7 +33,7 @@ def test_security_api_key():
def test_security_api_key_no_key():
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_api_key_query.py

@ -33,7 +33,7 @@ def test_security_api_key():
def test_security_api_key_no_key():
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_api_key_query_description.py

@ -33,7 +33,7 @@ def test_security_api_key():
def test_security_api_key_no_key():
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_oauth2.py

@ -56,7 +56,7 @@ def test_security_oauth2_password_other_header():
def test_security_oauth2_password_bearer_no_header():
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_openid_connect.py

@ -39,7 +39,7 @@ def test_security_oauth2_password_other_header():
def test_security_oauth2_password_bearer_no_header():
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

2
tests/test_security_openid_connect_description.py

@ -41,7 +41,7 @@ def test_security_oauth2_password_other_header():
def test_security_oauth2_password_bearer_no_header():
response = client.get("/users/me")
assert response.status_code == 403, response.text
assert response.status_code == 401, response.text
assert response.json() == {"detail": "Not authenticated"}

Loading…
Cancel
Save