вторник, 20 августа 2013 г.

Настройка Windows AD для смены пароля через Access Manager

Этот пост описывает настройку Active Directory для аутентификации пользователя и смены его пароля средствами OracleAccess Manager 11gR2. Дополнительных настроек ovd, описанных в этом посте, делать не нужно.
Оглавление:

Установка Access Manager 11gR2.
Установка  Oracle Virtual Directory
Настройка Virtual Directory
Настройка Active Directory 
Настройка Access Manager


1. Для хранения ob-атрибутов в АД необходимо расширить её схему. Ldif-файл для расширения схемы входит в дистрибутив AccessManager 11gR2. Его можно найти здесь:
$MIDDLEWARE_HOME/Oracle_IDM1/oam/server/pswdservice/ldif
 В файле много лишних спецсимволов, из-за которых импорт проходит с ошибкой. Под катом отредактированный файл.
 На контроллере необходимо выполнить:
ldifde -i -f "c:\ora\AD_PWDPersonSchema.ldif" –v

2. Дополнительное редактирование схемы.
Для редактирования схемы можно использовать оснастку windows. По умолчанию она не включена. Чтобы ей воспользоваться, надо зарегистрировать библиотеку командой, выполненной в консоли "as Administrator"
regsvr32 schmmgmt.dll
После этого станет доступна оснастка  ActiveDirectory Shema


В этом примере я редактирую класс person, который есть у каждого пользователя.
Импортированные из ldiff-файла классы необходимо добавить в Auxiliary-классы person

и в возможных superior-aх этих классов указать класс person
3. Создание ACL для ob-атрибутовПользователям необходимо дать права на редактирования добавленных атрибутов.
Это можно сделать из оснастки Users And Computers, включив Advanced  Features View

В этом примере создаются ACL на объект сn=users, dn=wcc, dn=local. Доступ даётся для группы SELF. Таким образом пользователи будут иметь возможность менять только свои атрибуты.


Теперь можно сменить значение всех ob-атрибутов через LDAP браузер







dn: cn=obpasswordcreationdate,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obpasswordcreationdate
attributeID: 1.3.6.1.4.1.3831.0.0.149
schemaIDGUID:: OSaW3N0yw0WV2Z04jZQEFw==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: obpasswordcreationdate
adminDisplayName: obpasswordcreationdate
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=obpasswordchangeflag,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obpasswordchangeflag
attributeID: 1.3.6.1.4.1.3831.0.0.150
schemaIDGUID:: 3FV49M4KIEW0t4CrJadoAQ==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: obpasswordchangeflag
adminDisplayName: obpasswordchangeflag
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=obpasswordhistory,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obpasswordhistory
attributeID: 1.3.6.1.4.1.3831.0.0.151
schemaIDGUID:: nhDX9V5wc0ubLkyiYDYJdA==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: obpasswordhistory
adminDisplayName: obpasswordhistory
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=obpasswordexpmail,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obpasswordexpmail
attributeID: 1.3.6.1.4.1.3831.0.0.152
schemaIDGUID:: zpjl9oEs8EGmFrTxf7VPaw==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: obpasswordexpmail
adminDisplayName: obpasswordexpmail
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=oblogintrycount,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: oblogintrycount
attributeID: 1.3.6.1.4.1.3831.0.0.172
schemaIDGUID:: mMZ1QqHPTkGi5//Fr40OjQ==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: oblogintrycount
adminDisplayName: oblogintrycount
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=oblockouttime,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: oblockouttime
attributeID: 1.3.6.1.4.1.3831.0.0.173
schemaIDGUID:: F8t8lDoqB0y7uPl3KSTo/w==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: oblockouttime
adminDisplayName: oblockouttime
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=obfirstlogin,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obfirstlogin
attributeID: 1.3.6.1.4.1.3831.0.0.174
schemaIDGUID:: DK6Srh2geUaC/tFzEJouWw==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: obfirstlogin
adminDisplayName: obfirstlogin
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: CN=obresponsetries,CN=Schema,CN=Configuration,DC=wcc,DC=local
changetype: add
objectClass: attributeSchema
cn: obresponsetries
attributeID: 1.3.6.1.4.1.3831.0.0.175
schemaIDGUID:: 1qDPo9m+wUikEXuG0uPA9w==
attributeSyntax: 2.5.5.12
oMSyntax: 64
showInAdvancedViewOnly: TRUE
isSingleValued: TRUE
lDAPDisplayName: obresponsetries
isMemberOfPartialAttributeSet: FALSE

dn: CN=oblastloginattemptdate,CN=Schema,CN=Configuration,DC=wcc,DC=local
changetype: add
objectClass: attributeSchema
cn: oblastloginattemptdate
attributeID: 1.3.6.1.4.1.3831.0.0.176
schemaIDGUID:: xu5GucPpyk2KSnsRGohCcA==
attributeSyntax: 2.5.5.12
oMSyntax: 64
showInAdvancedViewOnly: TRUE
isSingleValued: TRUE
lDAPDisplayName: oblastloginattemptdate
isMemberOfPartialAttributeSet: FALSE

dn: cn=oblastresponseattemptdate,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectClass: attributeSchema
cn: oblastresponseattemptdate
attributeID: 1.3.6.1.4.1.3831.0.0.199
schemaIDGUID:: VfiZXDmOLUO+klF/Q6g81w==
attributeSyntax: 2.5.5.12
oMSyntax: 64
showInAdvancedViewOnly: TRUE
isSingleValued: TRUE
lDAPDisplayName: oblastresponseattemptdate
adminDisplayName: oblastresponseattemptdate
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=obresponsetimeout,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obresponsetimeout
attributeID: 1.3.6.1.4.1.3831.0.0.200
schemaIDGUID:: Hq905C8ll0q0m8n12hgaCw==
attributeSyntax: 2.5.5.12
oMSyntax: 64
lDAPDisplayName: obresponsetimeout
adminDisplayName: obresponsetimeout
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=oblastsuccessfullogin,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: oblastsuccessfullogin
attributeID: 1.3.6.1.4.1.3831.0.0.249
schemaIDGUID:: ffPnOOXBLEK/vP5KMFO0nA==
attributeSyntax: 2.5.5.12
oMSyntax: 64
showInAdvancedViewOnly: TRUE
isSingleValued: TRUE
lDAPDisplayName: oblastsuccessfullogin
isMemberOfPartialAttributeSet: FALSE

dn: cn=oblastfailedlogin,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: oblastfailedlogin
attributeID: 1.3.6.1.4.1.3831.0.0.250
schemaIDGUID:: CcDtK511b0O6bfvpLwLFcA==
attributeSyntax: 2.5.5.12
oMSyntax: 64
showInAdvancedViewOnly: TRUE
isSingleValued: TRUE
lDAPDisplayName: oblastfailedlogin
isMemberOfPartialAttributeSet: FALSE

dn: cn=obAnsweredChallenges,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obAnsweredChallenges
attributeID: 1.3.6.1.4.1.3831.0.0.253
schemaIDGUID:: 3DXbtt1G502tkAAqsE1X5w==
attributeSyntax: 2.5.5.4
oMSyntax: 20
lDAPDisplayName: obAnsweredChallenges
adminDisplayName: obAnsweredChallenges
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=obYetToBeAnsweredChallenge,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obYetToBeAnsweredChallenge
attributeID: 1.3.6.1.4.1.3831.0.0.254
schemaIDGUID:: 7WKxSYFbeE+fJ2iYhjRaSA==
attributeSyntax: 2.5.5.4
oMSyntax: 20
lDAPDisplayName: obYetToBeAnsweredChallenge
adminDisplayName: obYetToBeAnsweredChallenge
showInAdvancedViewOnly: TRUE
isSingleValued: TRUE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE

dn: cn=obuseraccountcontrol,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: attributeSchema
cn: obuseraccountcontrol
attributeID: 1.3.6.1.4.1.3831.0.0.255
schemaIDGUID:: IhJeuDgqLEK6K4UQtiFNPg==
attributeSyntax: 2.5.5.4
oMSyntax: 20
lDAPDisplayName: obuseraccountcontrol
adminDisplayName: obuseraccountcontrol
showInAdvancedViewOnly: TRUE
isSingleValued: FALSE
searchFlags: 1
isMemberOfPartialAttributeSet: TRUE

dn:
changetype: modify
add: schemaUpdateNow
schemaUpdateNow: 1
-

dn: cn=oblixPersonPwdPolicy,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: classSchema
cn: oblixPersonPwdPolicy
lDAPDisplayName: oblixPersonPwdPolicy
adminDisplayName: oblixPersonPwdPolicy
governsID: 1.3.6.1.4.1.3831.0.1.21
schemaIDGUID:: fXwlzZ9fp0amZv7FQpDU0w==
showInAdvancedViewOnly: TRUE
objectClassCategory: 3
defaultHidingValue: FALSE
mayContain: obpasswordcreationdate
mayContain: obpasswordhistory
mayContain: obpasswordchangeflag
mayContain: obpasswordexpmail
mayContain: oblogintrycount
mayContain: oblockouttime
mayContain: obfirstlogin
mayContain: obresponsetries
mayContain: oblastloginattemptdate
mayContain: oblastresponseattemptdate
mayContain: obresponsetimeout
mayContain: oblastsuccessfullogin
mayContain: oblastfailedlogin
mayContain: obAnsweredChallenges
mayContain: obYetToBeAnsweredChallenge

dn:
changetype: modify
add: schemaUpdateNow
schemaUpdateNow: 1
-

dn: cn=oblixOrgPerson,cn=schema,cn=configuration,DC=wcc,DC=local
changetype: add
objectclass: classSchema
cn: oblixOrgPerson
lDAPDisplayName: oblixOrgPerson
adminDisplayName: oblixOrgPerson
governsID: 1.3.6.1.4.1.3831.0.1.13
schemaIDGUID:: tWOg+dUOR0ukoK9Y4UBhzA==
showInAdvancedViewOnly: TRUE
objectClassCategory: 3
defaultHidingValue: FALSE
mayContain: obuseraccountcontrol

dn:
changetype: modify
add: schemaUpdateNow
schemaUpdateNow: 1
-

Комментариев нет:

Отправить комментарий