Commit graph

201 commits

Author SHA1 Message Date
Khanh Ngo 78245d339f
Merge pull request #717 from RoeiGanor/master
OIDC custom claims
2020-05-17 13:44:52 +07:00
mathieu.brunot 9f562714f2
fix: Add favicon to fix #724
Signed-off-by: mathieu.brunot <mathieu.brunot@monogramm.io>
2020-05-09 23:56:19 +02:00
root 2044ce4737 oidc custom claims 2020-05-04 07:12:48 +00:00
Khanh Ngo 33eff6313f
Fix loading zone with Slave type 2020-05-02 09:41:01 +07:00
Khanh Ngo 978c0b6c62
Merge pull request #711 from terbolous/azure_oauth
Azure oauth fixes
2020-05-01 10:25:27 +07:00
Roei Ganor 483c767d26 Offline installation and searchable inputs 2020-04-30 17:20:37 +00:00
Erik Weber b03cbdea65
Azure oauth: Graph api calls it mail, not email 2020-04-30 12:15:19 +02:00
Erik Weber b8442c4c5c
Azure oauth: remove preferredName from query 2020-04-30 12:14:32 +02:00
Khanh Ngo 9e8401ae46
Merge branch 'master' of github.com:ngoduykhanh/PowerDNS-Admin 2020-04-30 10:17:32 +07:00
Khanh Ngo 02692c7759
Code formating 2020-04-30 10:17:08 +07:00
Khanh Ngo bbd00865dc
Merge pull request #681 from eht16/fix_create_template_from_zone_url
Remove $SCRIPT_ROOT from 'admin.create_template_from_zone' URL
2020-04-30 09:12:04 +07:00
Marcus Knight 0e093d4eec Support only having one auth method enabled (which isn't ldap/local) 2020-04-16 16:04:10 +08:00
Attila DEBRECZENI def06bee41 set SAML wantAssertionsEncrypted from config 2020-04-03 13:44:03 +00:00
Attila DEBRECZENI cc26174a48
wantAssertionsEncrypted to false 2020-03-27 02:19:06 +01:00
Attila DEBRECZENI a581aa3cf2 add SAML_ASSERTION_ENCRYPTED envrionment 2020-03-25 21:35:20 +00:00
Attila DEBRECZENI e550b0a109 SAML debug attributes 2020-03-25 21:05:30 +00:00
Enrico Tröger bc2e7c9786 Remove $SCRIPT_ROOT from 'admin.create_template_from_zone' URL
As the URL here is contructed from Flask's "url_for" which already
takes the script root into account, we do not need to add it here
explicitly. This would result in a duplicate script root otherwise.
2020-03-09 17:08:27 +01:00
Scott Howard 417338d826 Remove blank comments from rrsets before sending for compatibility with some pdns backends 2020-03-07 02:07:41 -06:00
Khanh Ngo f2704649f1
Merge pull request #668 from pprietosanchez/fix_search_API_request
Correct request method
2020-03-06 14:08:39 +07:00
Khanh Ngo 026dcead7f
Merge pull request #671 from eht16/add_missing_format_arguments
Add missing format arguments for error message
2020-03-06 13:58:10 +07:00
Khanh Ngo 7024404f73
Merge pull request #674 from sshipway/patch-1
Corrections to Azure auth service definition after refactor
2020-03-06 13:57:09 +07:00
Enrico Tröger b421b9b38a Fix token name in session for OIDC and GitHub authentication 2020-03-05 17:07:13 +01:00
Steve Shipway 7ac6529e0a
Corrections to Azure auth service definition after refactor 2020-03-04 17:34:01 +13:00
Enrico Tröger 2d55832729 Add missing format arguments for error message 2020-03-04 00:27:48 +01:00
pprietosanchez a2d98d38e2 Correct request method 2020-02-28 16:25:19 +01:00
Khanh Ngo 52eb62a911
Fix unit tests
The python float number formatting causes unit tests failed
2020-02-13 16:22:07 +07:00
Khanh Ngo d497fdee8e
Merge pull request #655 from eht16/issue428_sync_performance
Perform domain sync within a single transaction
2020-02-12 09:56:41 +07:00
Khanh Ngo 13aab7f6ee
Merge pull request #645 from eht16/outgoing_request_logging
Add log message after remote server request
2020-02-12 09:45:12 +07:00
Enrico Tröger 81bfde5a79 Add log message after remote server request
This might be handy to detect remote server problems or debugging
timeouts and the like.
2020-02-02 15:23:00 +01:00
Enrico Tröger eabbcedf08 Perform domain sync within a single transaction
This increases data inconsistency and also performance of the whole
update process: SqlAlchemy can use its own caching better with a single
transaction as it does not need to mark already fetched objects as dirty
and so re-fetch them again on later use. So after deleting a domain,
we can still use the previously fetched domain objects for the update
operations afterwards. Otherwise SqlAlchemy had to fetch each domain
object again with single SELECT statements which leads to bad
performance with many domains (>> 1000).

The introduced "do_commit" variable controls whether the database
changes are to be committed by the caller or in the called method
itself. So we can use a single transaction for the Domain.update()
method while still preserving the previous behavior for other callers.

Closes #428.
2020-02-02 15:15:20 +01:00
Khanh Ngo 4cfb6ef81f
Merge branch 'master' of github.com:ngoduykhanh/PowerDNS-Admin 2020-01-29 22:33:32 +07:00
Khanh Ngo 31d19b19ab Merge remote-tracking branch 'eht16/add_ssl_verify_setting' 2020-01-29 22:33:24 +07:00
Khanh Ngo faeb8d1f94
Merge pull request #652 from ngoduykhanh/fix_import
Fix logging in models
2020-01-29 22:31:56 +07:00
Khanh Ngo a069fdd8cb
Merge pull request #648 from eht16/adjustable_log_level
Introduce PDNS_ADMIN_LOG_LEVEL to change the log level
2020-01-29 22:28:03 +07:00
Khanh Ngo dbb181d575
Merge pull request #647 from eht16/fix_typos
Fiy typos in logging messages
2020-01-29 22:21:29 +07:00
Khanh Ngo 23c73f6c52
Fix logging in models 2020-01-29 22:18:15 +07:00
Khanh Ngo 2de8bf55f8 Merge branch 'dashboard_search_placeholder' 2020-01-29 22:00:17 +07:00
Kees Bos 4d391ccb34 Extend api with account and user management 2020-01-27 14:04:15 +00:00
Enrico Tröger 0f6b7bdcf6 Introduce PDNS_ADMIN_LOG_LEVEL to change the log level
By setting the environment variable PDNS_ADMIN_LOG_LEVEL to a Python
support log level, PowerDNS-Admin will use that log level.
2020-01-27 00:20:32 +01:00
Enrico Tröger ccaf74646d Fiy typos in logging messages 2020-01-27 00:05:28 +01:00
Enrico Tröger 68843d9664 Add new setting to verify outgoing SSL connections
The new setting 'verify_ssl_connections' tells the requests library to
verify secured outgoing HTTP connections.
Usually verifying is desired and helps to reveal configuration
problems. It also disables an ugly warning when HTTPS connections
are made without verification.
2020-01-25 19:44:11 +01:00
Enrico Tröger 737531d23f Add dashboard search placeholder to describe search patterns
Since ^ and $ for searching from start and to end is supported, let's
tell the user about it.
2020-01-25 19:26:13 +01:00
mathieu.brunot acef820c54
🐛 Fix logger for LDAP group filter
Signed-off-by: mathieu.brunot <mathieu.brunot@monogramm.io>
2020-01-08 23:40:14 +01:00
mathieu.brunot 0ea188f8d6
✏️ Fix copy/paste error in div id
Signed-off-by: mathieu.brunot <mathieu.brunot@monogramm.io>
2020-01-08 23:31:51 +01:00
mathieu.brunot 66ff3426e0
👌 Update LDAP selection flip
Signed-off-by: mathieu.brunot <mathieu.brunot@monogramm.io>
2020-01-08 23:23:40 +01:00
mathieu.brunot b4b5673cf1
Merge branch 'master' of github.com:johnwarburton/PowerDNS-Admin into feat/groupofnames
Signed-off-by: mathieu.brunot <mathieu.brunot@monogramm.io>
2020-01-08 23:19:51 +01:00
Khanh Ngo 1cd423041c Fix #632 2020-01-07 14:30:28 +07:00
Khanh Ngo b1ba339a9c Merge remote-tracking branch 'sshipway/azure' 2020-01-03 21:07:57 +07:00
Khanh Ngo e1c0b4a1b4
Fix missing import 2020-01-03 10:03:20 +07:00
Steve Shipway cff4d0af53 Fix some formatting issues 2020-01-03 15:57:07 +13:00
Steve Shipway 765eab999a Azure OAuth - add Group mappings to Roles 2020-01-03 15:36:38 +13:00
Khanh Ngo 7f8ae003fc
Fix #631 Ipv6 reverse dns with pretty_ipv6_ptr enabled 2020-01-03 09:32:04 +07:00
Khanh Ngo 3bf6e6e9f1
Merge pull request #622 from ngoduykhanh/email_verification
Add user email verification
2019-12-22 10:06:43 +07:00
Khanh Ngo 462190a913
Fix API key query 2019-12-22 10:06:02 +07:00
Khanh Ngo 9533d8a5aa
Adjustment in user profile email
- Don't allow to update to new email address that currently used by another user
- Reset the confirmed status if verify_user_email setting is enabled
2019-12-22 09:19:35 +07:00
Khanh Ngo d09a645300
Fix migration script and user model 2019-12-22 08:40:05 +07:00
Khanh Ngo 4bdd433079
Fix migration script and LGTM 2019-12-21 22:26:56 +07:00
Khanh Ngo 7739bf7cfc
Add user email verification 2019-12-21 21:43:03 +07:00
Khanh Ngo 1ea460fc71 Merge remote-tracking branch 'Neven1986/saml_requested_attrs' 2019-12-20 21:08:06 +07:00
Khanh Ngo 8723b7d56b
Fix #529. Update domain serial columns type 2019-12-20 11:36:27 +07:00
Neven1986 3688cec91a Support for SAML metadata Requested Attributes
Enhancements:

- More robust check when creating self-signed certificates
- Added support for SAML Requested Attributes through "SAML_SP_REQUESTED_ATTRIBUTES" parameter
2019-12-20 03:24:26 +01:00
Khanh Ngo 5567886aa3
Fix #614. Can not enable dnssec 2019-12-19 21:50:15 +07:00
Khanh Ngo 93cd64ac75
Fix #613. Create domain from template with SOA record enabled 2019-12-19 21:43:53 +07:00
Khanh Ngo 59110432a0
Merge pull request #612 from Neven1986/saml_certificate_fix
SAML certificate fix and enhancement
2019-12-19 09:11:15 +07:00
Neven1986 567430790c SAML certificate fix and enhancement
Problems resolved:

- Method create_self_signed_cert() was invoked nowhere. This puts parameter "SAML_SIGN_REQUEST" description in configs/development.py as incorrect
- Method create_self_signed_cert() was returning error while trying to write out certificate and private key. File handler was opened for writing out TEXT instead of BINARY data

Enhancements:

- Two new parameters are introduced SAML_CERT_FILE and SAML_KEY_FILE. User can now explicitly define own certificate and key file anywhere on file-system.
- If parameters mentioned in previous bullet aren't explicitly defined, in PowerDNS-Admin root directory self-signed certificate will be created.
- Certificates will be used or generated in any case, because in saml.py there are explicit parameters defined which require certificate/key in order to work normally. If they aren't, exception will be thrown. Examples of parameters defined in saml.py requiring certificate: wantAssertionsEncrypted, signMetadata, wantAssertionsSigned.
2019-12-19 00:40:25 +01:00
Khanh Ngo 7205b4a01b
User session improvement
- Add session handler on other blueprint's before request
- Adjustment in using jTimeout to close warning popup on
other tabs when we extend the session
2019-12-18 15:25:20 +07:00
Khanh Ngo 9a1b92fbc2
Add session timeout warning 2019-12-17 23:46:34 +07:00
Khanh Ngo 103bf176ed
Fix dashboard domain sorting 2019-12-17 13:34:52 +07:00
Khanh Ngo 3e961d7b21
LGTM fixes 2019-12-16 16:27:18 +07:00
Khanh Ngo f5b88ebc73
Merge branch 'master' into record_adjustment 2019-12-16 15:54:38 +07:00
Khanh Ngo 3196297f57
Fix domain template. Drop PDNS 3.x support 2019-12-16 14:23:17 +07:00
Khanh Ngo a891ed38e2
Add more log and history data 2019-12-16 11:01:16 +07:00
Khanh Ngo 4263bccbba
Format the history popup content 2019-12-15 21:42:08 +07:00
Khanh Ngo de581e9e1d
Yapf code formatting 2019-12-15 09:40:05 +07:00
Neven1986 37f24f9fde Correction of redirect URL after successful SAML login
From my perspective, if agreed, this change can be merged, because the basic SAM auth. functionality is now present
and was tested with "samlidp.io" iDP.

However, there are further improvements which I would like to integrate, but as a separate features in separate pull requests
2019-12-15 01:15:30 +01:00
Neven1986 894756ad96 Invocation of separate threa in get_idp_data() problem resolved 2019-12-14 21:45:51 +01:00
Neven1986 cd3535dcd2 - Variable references inside SAML class were fixed
- Function signatures inside SAML class were fixed
    - Redirect URL for /saml/login path was modified (saml_authorized -> index.saml_authorized)

    Current status is that SAML metadata can be generated under /saml/metadata and communication to SAML iDP is working

    Problems remaining:
        - SAML Response doesn't contain any attributes (There is no AttributeStatement on the Response). It can be that problem is on iDP side
        - Background thread in retrieve_idp_data() cannot be spawned, this part is currently commented out, old code needs to be revisited
2019-12-14 18:59:59 +01:00
Khanh Ngo 5ac58d5503
Re-add pretty_ipv6_ptr. Bug fixes 2019-12-14 23:13:55 +07:00
Khanh Ngo 14658d797e
Adjustment in domain's record applying 2019-12-14 14:47:21 +07:00
Khanh Ngo ad6b04bd78
LGTM fixes 2019-12-14 08:31:23 +07:00
Khanh Ngo c0594b2c0b
Fix SAML 2019-12-13 21:55:11 +07:00
Khanh Ngo d90a20f8da
Fix #602 domain table with long records 2019-12-13 21:22:58 +07:00
Tobias Paepke 81869f4cd8 add history entries for rrsets delivered via zone api which is forwarded to pdns 2019-12-11 14:04:18 +01:00
Khanh Ngo 242e31a490
Merge pull request #599 from ngoduykhanh/global_search
Add PDNS global search feature
2019-12-11 16:56:06 +07:00
Khanh Ngo 1d973d1614
Allow update zone kind the domain setting page 2019-12-11 16:02:36 +07:00
Khanh Ngo 798b7abb5b
Show actual result on applyChanges(). Remove generated assets files 2019-12-11 13:45:27 +07:00
Khanh Ngo c62f9f6936
Formatting 2019-12-11 10:32:02 +07:00
Khanh Ngo 2cc73abbe5 Add PDNS global search feature
Remove POST method in global search route

Edit form action
2019-12-11 10:26:17 +07:00
Khanh Ngo a65b940103
Remove POST method in global search route 2019-12-11 10:02:04 +07:00
Khanh Ngo de69eaf825
Add PDNS global search feature 2019-12-11 09:55:18 +07:00
Khanh Ngo 67e6df6880
Bug fixes. Adjust logger 2019-12-10 17:08:43 +07:00
Khanh Ngo 9904505867
Bug fixes 2019-12-10 10:36:51 +07:00
Khanh Ngo bca3c45e37
Add record comment 2019-12-09 17:50:48 +07:00
Khanh Ngo c1fae6f3dd
Update README and LGTM fixes 2019-12-08 18:23:36 +07:00
Khanh Ngo 354383f0ec
Fix missing import 2019-12-08 08:57:24 +07:00
Khanh Ngo 19401699ca
Fix #596 missing import 2019-12-07 20:46:14 +07:00
Khanh Ngo 6af94df00a
LGTM fixes. Remove unused import and variables 2019-12-07 20:20:40 +07:00
Khanh Ngo 80b6ca19ac Resolve the conflicts and add adjustment to #591 2019-12-06 14:27:35 +07:00
Khanh Ngo 8de6df4d3b Fix the tests
Fix the tests

Fix the tests
2019-12-06 10:59:19 +07:00
Khanh Ngo 840e2a4750 Update docker stuff and bug fixes 2019-12-04 11:50:46 +07:00
Khanh Ngo 8ea00b9484
Refactoring the code
- Use Flask blueprint
- Split model and views into smaller parts
- Bug fixes
- API adjustment
2019-12-02 10:32:03 +07:00