|
|
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
Кто знает по какому алгоритму реализована функция wwv_flow_security.check_db_password ? Я знаю только два способа: 1-й способ. Через EXECUTE IMMEDIATE 'alter user ' || p_user_name || ' identified by ' || p_password; Приблизительно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 2. Через поптытку создания DBLINK. Но выглядят эти способы не очень красиво. Может есть другой способ которого я не заню? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 09:46 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
Судя по всему первым способом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 11:36 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
Ales Protiv Судя по всему первым способом Ага, в интеренете видел упоминания о проблемах безопасности APEX до 3.0.1 в этой функции. Там же обрывки кода самой функции. По поводу алгоритма, правильно ли я понимаю, что если я в любом приложении Apex использующим авторизацию DB, введу пользователя SYS, то на непродолжительное время пароль у SYS будет изменен на тот, который я введу? Боязно как-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 11:57 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
Ну да, дырка походу. С другой стороны зная дырку - нет проблем её заткнуть ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 12:51 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
и как же можно заткнуть? Я бы не сказал что это дырка. Но реализация проверки пользователь/пароль смущает. Но судя по всему других путей для проврки в Oracle нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 14:16 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
Во-первых никто не заставляет использовать именно эту схему аутентификации. Более того, если нету веских причин этого делать, то её не следует использовать. Во-вторых, если уж используется эта схема, то никто не мешает поставить те же validations на странице логина, или прописать conditions в процессе login, где запретить использование потенциально опасных имен пользователей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 14:55 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
проверка реализована именно так, как указано в первом способе правда еще проверяется длина имени и пароля < 30 символов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 15:20 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
Ales ProtivВо-первых никто не заставляет использовать именно эту схему аутентификации. Более того, если нету веских причин этого делать, то её не следует использовать. Хотел бы услышать почему? Сейчас на новом проекте как раз и думал использовать авторизацию от Oracle. Ales ProtivВо-вторых, если уж используется эта схема, то никто не мешает поставить те же validations на странице логина, или прописать conditions в процессе login, где запретить использование потенциально опасных имен пользователей. За эту подсказку отдельное спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 16:39 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
auriga проверка реализована именно так, как указано в первом способе правда еще проверяется длина имени и пароля < 30 символов Это я знал. Вот как выглядит моя реализация: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. Поправте если чего забыл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 16:43 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
uranicAles ProtivВо-первых никто не заставляет использовать именно эту схему аутентификации. Более того, если нету веских причин этого делать, то её не следует использовать. Хотел бы услышать почему? Сейчас на новом проекте как раз и думал использовать авторизацию от Oracle. Пользы от неё потому что почти никакой. Только что пароль сама проверяет, да и то видите каким способом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 16:53 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
uranicПоправте если чего забыл. :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2008, 18:30 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
auriga ... Супер!. Если не секрет, откуда код? Разврапил? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2008, 08:41 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
да http://oracle-rewrap.narod.ru/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2008, 19:19 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
А как пользоваться этим чудом? Как не пытался выдает тот же файл что и на входе... Пробовал пакеты из Oracle 10.2.0.3. Теперь захотелось посмотреть как устроен пакет wwv_flow_audit. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2008, 08:11 |
|
||
|
Как работает wwv_flow_security.check_db_password?
|
|||
|---|---|---|---|
|
#18+
утилита не понимает длинных имен файлов там ничего интересного PROCEDURE AUDIT_ACTION( P_TABLE_NAME IN VARCHAR2, P_ACTION IN VARCHAR2, P_TABLE_PK IN NUMBER ) IS L_ID NUMBER := NULL; L_PAGE NUMBER := NULL; BEGIN WWV_FLOW_UTILITIES.CHECK_SGID; IF WWV_FLOW.G_IMPORT_IN_PROGRESS OR G_CASCADE THEN RETURN; END IF; SELECT wwv_seq.nextval into l_id from dual; IF P_TABLE_NAME IN ( 'WWV_FLOW_STEPS', 'WWV_FLOW_STEP_BUTTONS', 'WWV_FLOW_STEP_BRANCHES', 'WWV_FLOW_STEP_ITEMS', 'WWV_FLOW_STEP_ITEM_HELP', 'WWV_FLOW_STEP_COMPUTATIONS', 'WWV_FLOW_STEP_VALIDATIONS', 'WWV_FLOW_STEP_PROCESSING', 'WWV_FLOW_PAGE_PLUGS' ) THEN L_PAGE := V( 'FB_FLOW_PAGE_ID' ); ELSE L_PAGE := NULL; END IF; BEGIN INSERT into wwv_flow_builder_audit_trail ( ID, AUDIT_DATE, AUDIT_ACTION, FLOW_TABLE, FLOW_TABLE_PK, FLOW_USER, FLOW_ID, PAGE_ID, SCN) values ( l_id, sysdate, p_action, p_table_name, p_table_pk, nvl(v('USER'),user), decode(wwv_flow.g_flow_id, 4750,v('F4750_P2_ID'), 4150,v('F4150_P1_FLOW_ID'), nvl(v('FB_FLOW_ID'),wwv_flow.g_flow_id)), l_page, dbms_flashback.get_system_change_number); EXCEPTION WHEN OTHERS THEN NULL; END; END AUDIT_ACTION; PROCEDURE REMOVE_AUDIT_TRAIL( P_FLOW_ID IN NUMBER ) IS BEGIN WWV_FLOW_UTILITIES.CHECK_SGID; DELETE from wwv_flow_builder_audit_trail where flow_id = p_flow_id and security_group_id = wwv_flow_security.g_security_group_id; END REMOVE_AUDIT_TRAIL; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2008, 10:38 |
|
||
|
|

start [/forum/topic.php?fid=50&msg=35612056&tid=1875542]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 338ms |

| 0 / 0 |
