Expired grace oracle что это

Thinus Meyer’s DBA adventures

Tuesday, March 8, 2011

ACCOUNT_STATUS = EXPIRED(GRACE)

Users are identified within the app, so all DB connections are done through 1 schema. We created a profile for this schema where the password will never expire. App support has a manual process to change the password every 60 days, but Oracle must never be allowed to expire the password automatically.

The problem is that I found the ACCOUNT_STATUS for the main schema to be EXPIRED(GRACE) and that the EXPIRY_DATE is 3 days away.

This schemas profile was changed by accident, and rectified within a few hours. But the damage was done the ACCOUNT_STATUS still showed EXPIRED(GRACE).

I found an excellent blog post by Robert Geier (http://blog.contractoracle.com/2009/11/analysis-of-oracle-password-expiry.html) to explain the situation. Here’s a abbreviation of his explanation: password expiry is controlled by the PASSWORD_LIFE_TIME profile limit, is activated at login, and is reset by a password change. Changing the profile will not change aud$.ASTATUS.

SQL> select USERNAME, PROFILE, ACCOUNT_STATUS from dba_users where username = ‘QWERTY’;

USERNAME PROFILE ACCOUNT_STATUS

QWERTY QWERTY_NONEXPIRY EXPIRED(GRACE)

So even though the profile was changed back to QWERTY_NONEXPIRY the ACCOUNT_STATUS was still EXPIRED(GRACE). The only way to reset the ACCOUNT_STATUS back to OPEN is to change the password, because only a password change will reset aud$.ASTATUS. But a password change will give a ORA-28007 because of the current profile limits for PASSWORD_REUSE_MAX and PASSWORD_REUSE_TIME gets violated.

SQL> select password from sys.user$ where name=’QWERTY’;

SQL> alter user QWERTY identified by values ’87FE2DD49B2882B2′;

alter user QWERTY identified by values ’87FE2DD49B2882B2′

ORA-28007: the password cannot be reused

So I had to create a new temporary profile with the required settings to allow me to change the password to be the same as the current password:

SQL> create profile tmtmp limit PASSWORD_REUSE_MAX UNLIMITED PASSWORD_REUSE_TIME UNLIMITED;

SQL> alter user QWERTY profile tmtmp;

SQL> alter user QWERTY identified by values ’87FE2DD49B2882B2′;

SQL> alter user QWERTY profile QWERTY_NONEXPIRY;

SQL> select USERNAME, PROFILE, ACCOUNT_STATUS from dba_users where username = ‘QWERTY’;

Источник

Изменить статус учетной записи пользователя Oracle с EXPIRE(GRACE) на OPEN

Любой способ изменить статус учетной записи пользователя Oracle с EXPIRE(GRACE) в OPEN без сброса пароля?

6 ответов

Нет, вы не можете изменить статус учетной записи с EXPIRE(GRACE) на OPEN без сброса пароля.

Если вы заставите пароль пользователя базы данных истечь с помощью параметра PASSWORD EXPIRE, то пользователь (или администратор базы данных) должен изменить пароль, прежде чем пытаться войти в базу данных после истечения срока действия.

Однако вы можете изменить статус на ОТКРЫТО, сбросив пароль пользователя на то же значение.

В зависимости от вашей версии и настроек, один из этих запросов, вероятно, даст вам хэш пароля:

Затем используйте это для сброса:

Чтобы прекратить это в будущем, сделайте следующее.

Чтобы сбросить статус пользователя, выполните запрос:

и выполнить часть или весь набор результатов.

Это выведет что-то вроде этого:

Просто используйте первую часть этого с alter user:

Это вернет учетную запись в состояние ОТКРЫТО без изменения пароля (при условии, что вы правильно вырезали и вставили хэш-значение из вывода DBMS_METADATA.GET_DDL), и вам даже не нужно знать, какой пароль.

Если вы знаете пароль этого пользователя или хотите его угадать, сделайте следующее:

Если эта команда успешно подключится, вы увидите сообщение «подключено», в противном случае вы увидите сообщение об ошибке. Если вы успешно ведете журнал, это означает, что вы знаете пароль. В этом случае просто сделайте:

и это сбросит пароль к тому же паролю, что и раньше, а также сбросит account_status для этого пользователя.

Источник

Как отключить истечение срока действия пароля Oracle?

Я использую Oracle для разработки. Срок действия пароля для учетной записи начальной загрузки, которую я всегда использую для восстановления базы данных, истек.

Как навсегда отключить срок действия пароля для этого пользователя (и всех остальных пользователей)?

Я использую Oracle 11g, у которого пароли истекают по умолчанию.

Чтобы изменить политику истечения срока действия пароля для определенного профиля пользователя в Oracle, сначала проверьте, какой профиль использует пользователь:

Затем вы можете изменить лимит, чтобы он никогда не истек, используя:

Если вы хотите предварительно проверить лимит, вы можете использовать:

Для разработки вы можете отключить политику паролей, если никакой другой профиль не был установлен (т.е. отключить истечение срока действия пароля по умолчанию):

Затем сбросьте пароль и разблокируйте учетную запись пользователя. Это никогда не должно истечь снова:

Поскольку другие ответы указывают, что изменение профиля пользователя (например, профиля «ПО УМОЛЧАНИЮ») приведет к тому, что пароли, которые после установки никогда не истекут.

Однако, как отмечает один из комментаторов, пароли, установленные под старыми значениями профиля, могут быть уже истекшими, и (если после указанного льготного периода профиля) учетная запись заблокирована.

Решение для паролей с истекшим сроком действия с заблокированными учетными записями (как указано в ответе на комментарий) заключается в использовании одной версии команды ALTER USER:

Однако команда разблокировки работает только для учетных записей, где учетная запись фактически заблокирована, но не для тех учетных записей, которые находятся в льготном периоде, то есть, когда срок действия пароля истек, но учетная запись еще не заблокирована. Для этих учетных записей пароль должен быть сброшен другой версией команды ALTER USER:

Ниже приведен небольшой сценарий SQL * Plus, который привилегированный пользователь (например, пользователь ‘SYS’) может использовать для сброса пароля пользователя к текущему существующему хешированному значению, хранящемуся в базе данных.

РЕДАКТИРОВАТЬ: более старые версии Oracle хранят пароль или хэш пароля в столбце pword, более новые версии Oracle хранят хэш пароля в столбце spare4. Сценарий ниже изменен, чтобы собрать столбцы pword и spare4, но использовать столбец spare4 для сброса учетной записи пользователя; изменить по необходимости.

Источник

How do I turn off Oracle password expiration?

I’m using Oracle for development. The password for a bootstrap account that I always use to rebuild my database has expired.

How do I turn off password expiration for this user (and all other users) permanently?

I’m using Oracle 11g, which has passwords expire by default.

6 Answers 6

To alter the password expiry policy for a certain user profile in Oracle first check which profile the user is using:

Then you can change the limit to never expire using:

If you want to previously check the limit you may use:

For development you can disable password policy if no other profile was set (i.e. disable password expiration in default one):

Then, reset password and unlock user account. It should never expire again:

As the other answers state, changing the user’s profile (e.g. the ‘DEFAULT’ profile) appropriately will lead to passwords, that once set, will never expire.

However, as one commenter points out, passwords set under the profile’s old values may already be expired, and (if after the profile’s specified grace period) the account locked.

The solution for expired passwords with locked accounts (as provided in an answering comment) is to use one version of the ALTER USER command:

However the unlock command only works for accounts where the account is actually locked, but not for those accounts that are in the grace period, i.e. where the password is expired but the account is not yet locked. For these accounts the password must be reset with another version of the ALTER USER command:

Below is a little SQL*Plus script that a privileged user (e.g. user ‘SYS’) can use to reset a user’s password to the current existing hashed value stored in the database.

EDIT: Older versions of Oracle store the password or password-hash in the pword column, newer versions of Oracle store the password-hash in the spare4 column. Script below changed to collect the pword and spare4 columns, but to use the spare4 column to reset the user’s account; modify as needed.

Источник

Пароли Oracle: аутентификация пользователей

Expired grace oracle что это. Смотреть фото Expired grace oracle что это. Смотреть картинку Expired grace oracle что это. Картинка про Expired grace oracle что это. Фото Expired grace oracle что этоАутентификацией базой данных называют аутентификацию учетной записи и пароля непосредственно программным обеспечением Oracle. Однако, хотя аутентификация базой данных проста в настройке, она не является единственным или лучшим средством аутентификации пользователей Oracle. Существует несколько способов аутентификации пользователей базы данных — способов, не зависящих от БД.

В этой моей статье блога будет освещен наиболее часто применяемый способ аутентификации пользователей Oracle посредством базы данных. Затем мы кратко рассмотрим другие средства аутентификации пользователей — внешнюю, прокси- и централизованную аутентификацию пользователей.

Аутентификация базой данных

Аутентификация базой данных — это стандартная проверка полномочий доступа пользователя за счет применения паролей базы данных. При использовании аутентификации пользователей базой данных необходимо располагать строгой политикой управления паролями.

Вот пример аутентификации базой данных:

Управление паролями

В зависимости от способа создания базы данных (вручную или с помощью DBCA) Oracle будет содержать несколько учетных записей с заданными по умолчанию паролями. Если табличное пространство создается вручную, БД может содержать только учетные записи SYS, SYSTEM, DBSNMP (учетная запись агента Intelligent Agent (Интеллектуальный агент) Oracle) и OUTLN (имя пользователя для управления средством управления хранимыми планами выполнения). В некоторых случаях пользователь scott (владелец старой схемы демонстрационной БД Oracle) также создается с заданным по умолчанию паролем tiger. Стандартная база данных, созданная DBCA, может содержать до 32 определенных по умолчанию учетных записей пользователей.

В рамках защиты базы данных необходимо использовать все стандартные методики управления паролями, включая изменение паролей с заданными интервалами, проверку паролей на сложность и предотвращение повторного использования старых паролей.

Рассмотрим, как Oracle создает заданные по умолчанию учетные записи пользователей в новой базе данных. Запрос, показанный в листинге ниже, выводит все имена пользователей и их состояние. Учетная запись может быть открытой или же заблокированной либо утратившей силу.

Открытая (open) учетная запись — учетная запись, с которой можно регистрироваться в базе данных, при условии наличия действующего пароля. Заблокированная (locked) учетная запись должна быть явно разблокирована администратором БД. Обычно заблокированная учетная запись является результатом попыток входа пользователя в базу данных с неправильным паролем большее количество раз, чем разрешено указанным пределом. Утратившая силу (expired) учетная запись — это учетная запись, пароль которой должен быть изменен, что обеспечивает невозможность использования тех же самых паролей.

Администратор БД должен изменить пароли всех созданных по умолчанию учетных записей пользователей немедленно после создания базы данных. Все ненужные учетные записи, созданные по умолчанию, должны быть заблокированы и признаны утратившими силу.

Пароли по умолчанию пользователей Oracle

Имя пользователяПарольЗашифрованный пароль
ADAMSWOOD72CDEF4A3483F60D
ADLDEMOADLDEMO147215F51929A6E8
APPLSYSFND0F886772980B8C79
APPLYSYSPUBPUBA5E09E84EC486FC9
APPSAPPSD728438E8A5925E0
AQDEMOAQDEMO5140E342712061DD
AQJAVAAQJAVA8765D2543274B42E
AQUSERAQUSER4CF13BDAC1D7511C
AUDIOUSERAUDIOUSERCB4F2CEC5A352488
AURORA$JIS$
UTILITY$
Random Password
(Случайный пароль)
.
AURORA$ORB$
UNAUTHENTICATED
INVALID80C099F0EADF877E
BLAKEPAPER9435F2E60569158E
CATALOGCATALOG397129246919E8DA
CDEMO82CDEMO837299A5E2A5A05820
CDEMOCORCDEMOCOR3A34F0B26B951F3F
CDEMOUCBCDEMOUCBCEAE780F25D556F8
CDEMORIDCDEMORIDE39CEFE64B73B308
CENTRACENTRA63BF5FFE5E3EA16D
CLARKCLOTH7AAFE7D01511D73F
COMPANYCOMPANY402B659C15EAF6CB
CSMIGCSMIG09B4BB013FBD0D65
CTXDEMOCTXDEMOCB6B5E9D9672FE89
CTXSYSCTXSYS24ABAB8B06281B4C
DBSNMPDBSNMPE066D214D5421CCC
DEMODEMO4646116A123897CF
DEMO8DEMO90E7260738FDFD678
EMPEMPB40C23C6E2B4EA3D
EVENTEVENT7CA0A42DA768F96D
FINANCEFINANCE6CBBF17292A1B9AA
FNDFND0C0832F8B6897321
GPFDGPFDBA787E988F8BC424
GPLDGPLD9D561E4D6585824B
HRHR4C6D73C3E8B0F0DA
HLWHLW855296220C095810
IMAGEUSERIMAGEUSERE079BF5E433F0B89
IMEDIAIMEDIA8FB1DC9A6F8CE827
JONESSTEELB9E99443032F059D
JMUSERJMUSER063BA85BF749DF8E
LBACSYSLBACSYSAC9700FD3F1410EB
MDSYSMDSYS9AAEB2214DCC9A31
MFGMFGFC1B0DD35E790847
MIGRATEMIGRATE5A88CE52084E9700
MILLERMILLERD0EFCD03C95DF106
MMO2MMO3AE128772645F6709
MODTESTYESBBFF58334CDEF86D
MOREAUMOREAUCF5A081E7585936B
NAMESNAMES9B95D28A979CC5C4
MTSSYSMTSSYS6465913FF5FF1831
MXAGENTMXAGENTC5F0512A64EB0E7F
OCITESTOCITESTC09011CB0205B347
ODSODS89804494ADFC71BC
ODSCOMMONODSCOMMON59BBED977430C1A8
OEOED1A2DFC623FDA40A
OEMADMOEMADM9DCE98CCF541AAE6
OLAPDBAOLAPDBA1AF71599EDACFB00
OLAPSVRINSTANCEAF52CFD036E8F425
OLAPSYSMANAGER3FB8EF9DB538647C
ORACACHERandom Password
(Случайный пароль)
.
ORAREGSYSORAREGSYS28D778112C63CB15
ORDPLUGINSORDPLUGINS88A2B2C183431F00
ORDSYSORDSYS7EFA02EC7EA6B86F
OSE$HTTP$ADMINRandom Password
(Случайный пароль)
.
OUTLNOUTLN4A3BA55E08595C81
PERFSTATPERFSTATAC98877DE1297365
PMPMC7A235E6D2AF6018
POPO355CBEC355C10FEF
PO8PO87E15FBACA7CDEBEC
PO7PO76B870AF28F711204
PORTAL30PORTAL31D373ABE86992BE68
PORTAL30_DEMOPORTAL30_DEMOCFD1302A7F832068
PORTAL30_PUBLICPORTAL30_PUBLIC42068201613CA6E2
PORTAL30_SSOPORTAL30_SSO882B80B587FCDBC8
PORTAL30_SSO_PSPORTAL30_SSO_PSF2C3DC8003BC90F8
PORTAL30_SSO
_PUBLIC
PORTAL30_SSO
_PUBLIC
98741BDA2AC7FFB2
POWERCARTUSERPOWERCARTUSER2C5ECE3BEC35CE69
PRIMARYPRIMARY70C3248DFFB90152
PUBSUBPUBSUB80294AE45A46E77B
QSQS4603BCD2744BDE4F
QS_ADMQS_ADM3990FB418162F2A0
QS_CBQS_CB870C36D8E6CD7CF5
QS_CBADMQS_CBADM20E788F9D4F1D92C
QS_CSQS_CS2CA6D0FC25128CF3
QS_ESQS_ES9A5F2D9F5D1A9EF4
QS_OSQS_OS0EF5997DC2638A61
QS_WSQS_WS0447F2F756B4F460
RERE933B9A9475E882A6
REPADMINREPADMIN915C93F34954F5F8
RMAILRMAILDA4435BBF8CAE54C
RMANRMANE7B5D92911C831E1
SAMPLESAMPLEE74B15A3F7A19CA8
SCOTTTIGERF894844C34402B67
SDOS_ICSAPSDOS_ICSAPC789210ACC24DA16
SECDEMOSECDEMO009BBE8142502E10
SHSH54B253CBBAAA8C48
SYSCHANGE_ON_INSTALL4DE42795E66117AE
SYSADMSYSADMBA3E855E93B5B9B0
SYSTEMMANAGERD4DF7931AB130E37
TAHITITAHITIF339612C73D27861
TDOS_ICSAPTDOS_ICSAP7C0900F751723768
TRACESVRTRACEF9DA8977092B7B81
TSDEVTSDEV29268859446F5A8C
TSUSERTSUSER90C4F894E2972F08
USER0USER08A0760E2710AB0B4
USER1USER1BBE7786A584F9103
USER2USER21718E5DBB8F89784
USER3USER394152F9F5B35B103
USER4USER42907B1BFA9DA5091
USER5USER56E97FCEA92BAA4CB
USER6USER6F73E1A76B1E57F3D
USER7USER73E9C94488C1A3908
USER8USER8D148049C2780B869
USER9USER90487AFEE55ECEE66
UTLBSTATUUTLESTATC42D1FA3231AB025
VIDEOUSERVIDEOUSER29ECA1F239B0F7DF
VIF_DEVELOPERVIF_DEV_PWD9A7DCB0C1D84C488
VIRUSERVIRUSER404B03707BF5CEA3
VRR1VRR2811C49394C921D66
WEBDBWEBDBD4C4DCDD41B05A5D
WKSYSWKSYS545E13456B7DDEA0

Чувствительность пароля к регистру символов

По умолчанию все пароли в Oracle Database 11g и 12c зависят от регистра. Параметр инициализации SEC_CASE_SENSITIVE_LOGON управляет чувствительностью паролей к регистру символов. Значение этого параметра по умолчанию — true, т.е. по умолчанию все пароли зависят от регистра. Если по какой-либо причине, например, из-за того, что некоторые приложения используют жестко закодированные пароли, которые должны быть независимыми от регистра, то установкой параметра SEC_CASE_SENSITIVE_LOGON в false базе данных можно указать на необходимость игнорирования регистра символов при проверке паролей:

Как изменить пароль пользователя Oracle

При модернизации более ранних версий БД до Oracle Database 11g пароли остаются независимыми от регистра, поскольку таким было поведение предшествующих версий. Чтобы сделать их зависимыми от регистра, необходимо с помощью оператора ALTER USER изменить пароль каждого пользователя.

При обновлении до Oracle Database 11g пароли остаются независимыми от регистра до тех пор, пока они не будут изменены. Если параметр SEC_CASE_SENSITIVE_LOGON установлен в используемое по умолчанию значение true, все новые пароли будут зависимыми от регистра, подобно паролям в новой базе данных версии Oracle Database 11g. В только что обновленной базе данных можно выполнить следующий запрос, чтобы выяснить, в какой версии был установлен или изменен пароль пользователя:

Столбец PASSWORD_VERSIONS отображает версию базы данных, в которой пароль был первоначально установлен или изменен. Результат запроса показывает, что все пароли были либо созданы, либо изменены в версии Oracle Database 11g. Этот запрос не позволяет увидеть (зашифрованные) пароли, как можно было в предшествующих версиях, но зашифрованные пароли доступны для просмотра через представление USER$.

При неудачных попытках подключения с применением неправильного пароля после третьей неудачной попытки база данных увеличит временной интервал между последующими попытками максимум до 10 секунд.

Поддержка защищенных паролей

В дополнение к зависимости всех паролей от регистра символов, Oracle предлагает также другие функциональные возможности для обеспечения поддержки защищенных паролей. К ним относится передача всех введенных пользователями паролей посредством надежного алгоритма хеширования (SHA-1, который использует 160-битный ключ) и их сравнение с хранимыми верительными данным этого пользователя, а также дополнение всех паролей уникальным случайным значением для гарантии уникальности результирующих верительных данных.

Блокировка учетных записей

Следующий оператор позволяет разблокировать для свободного доступа любую заблокированную учетную запись пользователя:

С помощью оператора CREATE PROFILE или ALTER PROFILE можно вынудить Oracle блокировать любую учетную запись после определенного числа неудачных попыток регистрации. Oracle позволяет задавать продолжительность интервала, в течение которого учетная запись должна оставаться заблокированной после указанного количества неудачных попыток входа в базу данных. По истечении этого времени Oracle автоматически разблокирует учетную запись. Чтобы закрыть эту лазейку, просто установите длительность периода блокирования в значение UNLIMITED (не ограничено).

Ниже приведен пример создания профиля с заданным временным периодом блокирования учетной записи:

База данных заблокирует учетную запись немедленно по достижении предела неудачных попыток регистрации FAILED_LOGIN_ATTEMPTS. Однако с помощью следующей команды администратор БД может разблокировать учетную запись пользователя в любое время:

Истечение срока действия пароля

Политики устаревания паролей, гарантирующие, что пользователи не смогут применять один и тот же пароль в течение длительного времени — стандартная составляющая безопасности базы данных. Как только срок действия пароля истекает, пользователь вынужден изменить его. Пароль можно объявить утратившим силу с помощью команды ALTER USER, как показано в следующем примере:

Этого же можно достичь также командой ALTER PROFILE:

Приведенный оператор ALTER PROFILE ограничивает срок действия пароля 30 днями, и об этом можно любезно напомнить пользователю, используя в операторе ALTER PROFILE конструкцию PASSWORD_GRACE_TIME. Как только конструкция PASSWORD_GRACE_TIME определена, при первой регистрации пользователя после окончания срока действия пароля пользователь получит предупреждение о том, что пароль утратит силу через три дня. Если пользователь не изменит пароль в течение трехдневного предупредительного периода, пароль утратит силу. После того как срок действия пароля истекает, пароль должен быть изменен.

Файл паролей

Oracle позволяет выбирать, как привилегированные пользователи должны подключаться к базе данных. Привилегированные пользователи — это пользователи, которые могут выполнять такие задачи, как запуск и остановка базы данных. По умолчанию только пользователь SYS обладает полномочиями SYSDBA и SYSOPER, которые считаются полномочиями высокого уровня. Пользователь SYS может предоставлять эти полномочия другим пользователям.

Конечно, любой администратор БД, который знает пароль пользователя SYS, может зарегистрироваться в качестве этого пользователя и выполнять привилегированные задачи. Однако, явно предоставляя чрезвычайно важные полномочия SYSDBA и SYSOPER пользователям, вы вынуждаете их указывать свое имя пользователя и пароль, что позволяет легко отслеживать действия привилегированных пользователей. Параметр инициализации REMOTE_LOGIN_PASSWORDFILE указывает, должна БД Oracle проверять наличие файла паролей.

Параметр REMOTE_LOGIN_PASSWORDFILE может принимать перечисленные ниже значения.

Для обеспечения наивысшей степени безопасности в Oracle рекомендуют применять опцию REMOTE_LOGIN_PASSWORDFILE=SHARED. Существует способ создания файла паролей и указания пользователей, которые могут обладать полномочиями SYSDBA и SYSOPER, вручную, но при использовании опции EXCLUSIVE Oracle будет автоматически добавлять пользователей в файл паролей при предоставлении им полномочий SYSDBA и SYSOPER. Для выяснения того, кому, кроме определенного по умолчанию пользователя SYS, выданы эти полномочия, можно запросить представление V$PWFILE_USERS:

Команда orapwd служит для создания нового файла паролей. Следующий вывод демонстрирует значения, которые можно передавать с командой orapwd, а также то, какие из них являются обязательными, а какие — необязательными.

Следующая команда создает новый файл паролей по имени testpwd:

Шифрованные пароли

По умолчанию пароли пользователей Oracle не шифруются, и это делает их уязвимыми для несанкционированного использования. Устанавливая следующие переменные среды — одну на клиенте, другую на сервере, — можно обеспечить, что Oracle всегда будет шифровать пароль при его пересылке по сети. Установите на клиенте следующую переменную:

На сервере должна быть установлена следующая переменная:

На заметку! Все пароли всегда автоматически шифруются во время сетевых подключений. При этом используется модифицированный алгоритм DES (Data Encryption Standard — стандарт шифрования данных).

Внешняя аутентификация

Еще один метод аутентификации пользователей базы данных — метод внешней аутентификации, при котором учетные записи пользователей на уровне операционной системы сопоставляются с именами пользователей в базе данных. Oracle осуществляет управление полномочиями пользователей в самой базе данных, но аутентификация пользователей производится операционной системой, которая является внешней по отношению к БД. Преимущество этого метода состоит в том, что будет требоваться единственное имя пользователя для операционной системы и для подключений к базе данных. Это может также облегчить аудит действий пользователей, поскольку имена в базе данных и учетные записи операционной системы совпадают.

Для применения аутентификации операционной системой вначале потребуется установить параметр конфигурации OS_AUTHENT_PREFIX в файле init.ora:

Пара кавычек не должна содержать пробел.

На заметку! По умолчанию параметру OS_AUTHENT_PREFIX присваивается значение «OPS$«, но это делается только для поддержания обратной совместимости.

При повторном запуске базы данных можно начать использовать внешнюю аутентификацию средствами операционной системы. Чтобы активизировать аутентификацию операционной системой, пользователей необходимо создавать следующим образом:

Обратите внимание, что новому пользователю не присваивается пароль — он в нем не нуждается. До тех пор, пока пользователь может войти в операционную систему, все, что ему нужно сделать для входа в базу данных — это ввести следующую команду:

На заметку! Хорошо известная учетная запись Oracle OPS$ORACLE — это простая разновидность приведенного примера внешней аутентификации. OPS$ — префикс, используемый Oracle, начиная с версии Oracle 5. Для внешней аутентификации операционной системой можно использовать любой префикс или вообще его не указывать.

Внешняя аутентификация операционной системой, описанная в этом разделе, не позволяет пользователям подключаться через службу Oracle Net, поскольку этот метод аутентификации считается не слишком безопасным. Поэтому конфигурации с разделяемым сервером, использующие Oracle Net, по умолчанию не могут применять внешнюю аутентификацию операционной системой. Для изменения этого определенного по умолчанию поведения потребуется установить следующий параметр в файле init.ora:

Прокси-аутентификация

Прокси-аутентификация позволяет одному постоянному сеансу базы данных выполнять переключение на других пользователей без необходимости осуществлять вход/выход из БД. Для поддержки взаимодействия пользователя с базой данных Oracle можно использовать несколько продуктов промежуточного слоя. Часто веб-сервер служит промежуточным слоем или слоем приложения, связывающего клиентов с базой данных. Промежуточный слой может выполнять аутентификацию пользователей или же передавать имя пользователя и пароль в базу данных для выполнения аутентификации. Ниже приведен пример санкционирования подключений посредством регистрации пользователя базы данных из узла промежуточного слоя с применением аутентификации с применением пароля.

В следующем примере показано, как разрешить постоянному сеансу, запущенному на сервере appserv, временно принимать идентичность salapati, если постоянный сеанс предоставляет пароль этого пользователя:

Централизованная авторизация пользователей

Если используется опция Oracle Advanced Security (Расширенная безопасность Oracle), для выполнения аутентификации пользователей можно использовать службу каталогов, работающую на основе LDAP (Lightweight Directory Access Protocol — облегченный протокол службы каталогов), такую как Oracle Internet Directory (OID). Служба на основе каталога позволяет создавать пользователей предприятия, которым можно назначать глобальные роли. Централизованное управление пользователями позволяет применять однократную регистрацию — т.е. чтобы получить доступ ко всем необходимым им базам данных, пользователи должны зарегистрироваться только один раз.

Поскольку опция Oracle Advanced Security используется не всеми базами данных, подробное описание реализации централизованной авторизации пользователей не приводится. Для ознакомления с подробным описанием этой функциональной возможности обращайтесь к руководству Oracle Advanced Security Administrator’s Guide (Руководство администратора расширенной системы безопасности Oracle), доступном на веб-сайте:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *