Попытка понять назначение «доброго» объекта в PassportJS - PullRequest
0 голосов
/ 22 мая 2018

Я в процессе обновления приложения NodeJS с v4.X до v8.X, использующего PassportJS.Моя проблема усугубляется тем фактом, что я новичок в Passport и перестраиваю приложение внутри контейнера Docker.Приложение использует Passport-WindowsAuth для аутентификации пользователей на сервере LDAP.Я просмотрел документацию , но там мало что может помочь мне понять следующий фрагмент кода:

profile._json.memberOf.forEach(function(e){
            if ( e === 'CN=Group 1,OU=ConfidentialGroup,DC=com' ) user.tokens.push({ kind: '^.*$' });

            if ( e === 'CN=Group 2,OU=ConfidentialGroup,DC=com' ) user.tokens.push({ kind: '^/security.*' });
            if ( [  'CN=Group 1,OU=ConfidentialGroup,DC=com' ].indexOf(e) >= 0 ) {
              user.tokens.push({ kind: '^/server(/env133)?(/batch.*)?$' });
            }
            if ( [  'CN=Group 3,OU=ConfidentialGroup,DC=com',
            'CN=Group 4,OU=ConfidentialGroup,DC=com',
            'CN=Group 5,OU=ConfidentialGroup,DC=com' ].indexOf(e) >= 0 ) {
              user.tokens.push({ kind: '^/server(/env133)?(/batch.*)?$' });
            }

Буду вечно благодарен, если кто-то сможет объяснить, что делает приведенный выше код,Я знаю, что часть, следующая за «kind:», является регулярным выражением.Помимо этого, я немного потерян.

Спасибо,

...