Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenRecords v3.5 - Main #558

Open
wants to merge 55 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
068cfa1
Re-implement server-side session and session timeout
zgary Nov 10, 2020
453626b
Add Clear-Site-Data header on logout
zgary Nov 20, 2020
7ab2419
Install pyotp and qrious; add MFA table; WIP views
zgary Dec 7, 2020
9dbc957
Create MFA blueprint and implement MFA backend functionality
zgary Dec 23, 2020
f744108
Merge pull request #535 from CityOfNewYork/g-zhou-openrecords-session…
joelbcastillo Dec 29, 2020
6b7d054
Install pyotp and qrious; add MFA table; WIP views
zgary Dec 7, 2020
436a08c
Create MFA blueprint and implement MFA backend functionality
zgary Dec 23, 2020
130e019
Update MFA secret column to LargeBinary datatype
zgary Jan 4, 2021
2963535
Rebase fix
zgary Jan 4, 2021
6b3b4a6
Remove old migration
zgary Jan 4, 2021
3501805
Use file for fernet key and create utils file for fernet methods
zgary Jan 5, 2021
cf89430
Update python dependencies
zgary Jan 7, 2021
81a0698
Add button to MFA manage page and add language to MFA register and ve…
zgary Jan 8, 2021
f4f3c67
Update Pipfile
zgary Jan 8, 2021
f934244
Gunicorn in pipfile; update gunicorn_config.py
joelbcastillo Jan 11, 2021
213e569
Merge pull request #538 from CityOfNewYork/g-zhou-openrecords-mfa
joelbcastillo Jan 13, 2021
ac7b286
Fix bugs in mfa register and remove
zgary Jan 15, 2021
fa10535
Update celery_config and .env.example
zgary Jan 15, 2021
2a5add9
Changes per PR comments
zgary Jan 22, 2021
a8ce394
Properly set default value for CELERY_CLEAR_EXPIRED_SESSION_IDS_INTERVAL
zgary Jan 22, 2021
b790ad9
Merge pull request #539 from CityOfNewYork/g-zhou-fix-mfa-bugs
zgary Jan 25, 2021
476a236
Updated specific agency instructions for DOT
johnyu95 Oct 7, 2021
26816f8
Update python pip packages to latest versions
johnyu95 May 2, 2022
ba036b1
Fixed bugs from deprecated functions and code clean up
johnyu95 May 4, 2022
b564dc5
Fixed custom request forms bug for radios with no selected value
johnyu95 May 4, 2022
305c3b6
Updated Pipfile
johnyu95 May 12, 2022
26d9fc7
Merge pull request #553 from CityOfNewYork/johnyu95-update-packages
johnyu95 May 13, 2022
d7796e1
Added support for Azure storage on file uploads WIP
johnyu95 Aug 9, 2022
65cee08
Fixed file response uploads
johnyu95 Aug 23, 2022
b89f119
File response edit and delete for azure storage
johnyu95 Sep 6, 2022
cfbb8ad
Changed serving files from SAS tokens instead of downloading
johnyu95 Oct 12, 2022
291a4ba
Changed USE_SFTP checks to USE_VOLUME_STORAGE
johnyu95 Oct 13, 2022
68b0a9e
Fixed bug with uploads not working on volume storage
johnyu95 Oct 14, 2022
9e3bea9
Cleanup
johnyu95 Oct 17, 2022
0ee7ebd
Updated .env.example for Azure storage
johnyu95 Oct 17, 2022
88af1e8
Fixed response token check for anon/public users
johnyu95 Oct 17, 2022
7b3d6d1
Merged with develop
johnyu95 Nov 2, 2022
b974005
Updated deprecated celery setting names
johnyu95 Nov 10, 2022
fa02d8e
Added SFTP check for file deletion
johnyu95 Nov 10, 2022
800a9cd
Merge pull request #557 from CityOfNewYork/johnyu95-azure-storage
johnyu95 Nov 10, 2022
81cc7f4
Merged with develop and updated dependencies
johnyu95 Nov 18, 2022
f8271a1
Updated send_file parameter name
johnyu95 Nov 22, 2022
f54420a
Added agency name and acronym to es_update
johnyu95 Nov 30, 2022
26b6cb4
Removed unused code and added custom form name fix
johnyu95 Dec 15, 2022
040f1ee
Added option to toggle MFA
johnyu95 Dec 21, 2022
99169d7
Add minor code review changes
zgary Jan 20, 2023
b8f97df
Merge pull request #559 from CityOfNewYork/main-merge
zgary Jan 20, 2023
e7a3395
Fixed open data compliance report missing referrer header error
johnyu95 Jan 27, 2023
f19865d
Fixed open data compliance report missing referrer header error
johnyu95 Jan 27, 2023
95b4929
Update _generate_signature method to use HMAC-SHA256
zgary Feb 15, 2023
a9daa6f
Updated google translate styles
johnyu95 Feb 22, 2023
78da8ff
Fixed super user toggle bug
johnyu95 Mar 2, 2023
7609acc
Merge branch 'develop' into main-merge
johnyu95 Apr 1, 2024
1eae68e
Merged with main
johnyu95 Apr 1, 2024
52f7b88
Fixed typo in models.py
johnyu95 Apr 1, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 17 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ BASE_URL=<BASE URL FOR DEPLOYED APP>
VIEW_REQUEST_ENDPOINT=<ENDPOINT FOR VIEWING A REQUEST>
APP_TIMEZONE=<LOCAL APPLICATION TIMEZONE>
SESSION_COOKIE_SECURE=True
SESSION_TYPE=<FLASK-SESSION SESSION TYPE>
ERROR_RECIPIENTS=

# Log Settings
Expand Down Expand Up @@ -58,6 +59,9 @@ ELASTICSEARCH_VERIFY_CERTS=FALSE
REDIS_HOST=<REDIS HOSTNAME>
REDIS_PORT=<REDIS PORT>

# Celery
CELERY_CLEAR_EXPIRED_SESSION_IDS_INTERVAL=<CELERY_CLEAR_EXPIRED_SESSION_IDS_INTERVAL>

# SFTP
USE_SFTP=True
SFTP_HOSTNAME=<SFTP SERVER HOSTNAME>
Expand All @@ -67,9 +71,12 @@ SFTP_PASSWORD=<PASSWORD FOR SFTP SERVICE ACCOUNT>
SFTP_RSA_KEY_FILE=<PATH TO RSA PRIVATE KEY>
SFTP_UPLOAD_DIRECTORY=<PATH TO UPLOADS FOR SFTP>


# Authentication Settings
PERMANENT_SESSION_LIFETIME=30
PERMANENT_SESSION_LIFETIME=20

# MFA
USE_MFA=<USE LOCAL MFA?>
MFA_ENCRYPT_FILE=<PATH TO FILE CONTAINING ENCRYPTION KEY>

# SAML
USE_SAML=<USE SAML AUTHENTICATION FOR LOGIN?>
Expand Down Expand Up @@ -111,3 +118,11 @@ RECAPTCHA_THRESHOLD=
# Sentry
SENTRY_DSN=<SENTRY DSN>
USE_SENTRY=False

# Azure Storage Settings
USE_AZURE_STORAGE=True
USE_VOLUME_STORAGE=False
AZURE_STORAGE_CONNECTION_STRING=<AZURE STORAGE ACCOUNT CONNECTION STRING>
AZURE_STORAGE_CONTAINER=<AZURE STORAGE CONTAINER NAME>
AZURE_STORAGE_ACCOUNT_NAME=<AZURE STORAGE ACCOUNT NAME>
AZURE_STORAGE_ACCOUNT_KEY=<AZURE STORAGE ACCOUNT KEY>
2 changes: 1 addition & 1 deletion .python-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.5.2
3.10.2
125 changes: 125 additions & 0 deletions Pipfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]
setuptools = "57.5.0"
pipdeptree = "*"
decorator = "*"
Faker = "*"
ipdb = "*"
ipython = "*"
ipython-genutils = "*"
pexpect = "*"
pickleshare = "*"
prompt-toolkit = "*"
ptyprocess = "*"
Pygments = "*"
simplegeneric = "*"
traitlets = "*"
wcwidth = "*"
pytest = "*"
pytest-cov = "*"
atomicwrites = "*"
attrs = "*"
more-itertools = "*"
pluggy = "*"
py = "*"

[packages]
alembic = "*"
appdirs = "*"
asn1crypto = "*"
bcrypt = "*"
blinker = "*"
cached-property = "*"
cairocffi = "*"
certifi = "*"
cffi = "*"
chardet = "*"
click = "*"
coverage = "*"
cryptography = "*"
cssselect2 = "*"
defusedxml = "*"
dominate = "*"
elasticsearch = {version = ">=7.0,<8.0"}
holidays = "*"
html5lib = "*"
idna = "*"
isodate = "*"
itsdangerous = "*"
jsonschema = "*"
ldap3 = "*"
lxml = "*"
oauthlib = "*"
paramiko = "*"
pdfrw = "*"
pkgconfig = "*"
pyasn1 = "*"
pycparser = "*"
pyparsing = "*"
python-dateutil = "*"
python-dotenv = "*"
python-editor = "*"
pytz = "*"
raven = "*"
redis = "*"
requests = "*"
requests-oauthlib = "*"
simplekv = "*"
six = "*"
tablib = "*"
tinycss2 = "*"
tzlocal = "*"
urllib3 = "*"
virtualenv = "*"
visitor = "*"
webencodings = "*"
xmlsec = "*"
business_calendar = "*"
CairoSVG = "*"
Flask = "*"
Flask-Bootstrap = "*"
Flask-Login = "*"
Flask-Mail = "*"
Flask-Migrate = "*"
Flask-Moment = "*"
Flask-reCaptcha = "*"
Flask-Script = "*"
Flask-SQLAlchemy = "*"
Flask-Tracy = "*"
Flask-WeasyPrint = "*"
Flask-WTF = "*"
Jinja2 = "*"
Mako = "*"
MarkupSafe = "*"
Pillow = "*"
PyNaCl = "*"
pyOpenSSL = "*"
Pyphen = "*"
SQLAlchemy = "*"
WeasyPrint = "*"
Werkzeug = "*"
WTForms = {extras = ["email"], version = "*"}
psycopg2-binary = "*"
python-magic-bin = {version = "*", sys_platform = "=='darwin'"}
flask-session = "*"
celery = "*"
billiard = "*"
kombu = "*"
vine = "*"
amqp = "*"
pyotp = "*"
python-magic = "*"
gunicorn = "*"
azure-core = "*"
azure-storage-blob = "*"

# Required for additional formats in tablib
xlwt = "*"
xlrd = "*"

[requires]
python_version = "3.10.2"
Loading