Выберите все псевдонимы на modifySSLConfig, используя JACL-скрипт. - PullRequest
0 голосов
/ 11 сентября 2018

Я хотел бы отредактировать все конфигурации SSL на всех моих псевдонимах.Я нашел некоторые ресурсы для этого, и мой код пока что

$AdminTask modifySSLConfig {-alias NodeDefaultSSLSettings -sslProtocol TLSv1.2}
$AdminConfig save

Я бы хотел сделать это для всех псевдонимов, которые можно найти на моем сервере, но я незнать, как

Любые идеи или руководства о том, как это сделать, помогут.Спасибо.

Редактировать:

Теперь я могу найти все конфиги SSL с помощью этого кода

[$AdminTask listSSLConfigs {-scopeName (cell):Node01Cell:(node):Node01}

Моя следующая проблема - как я могу извлечьстрока псевдонима оттуда?Мне нужен только псевдоним, чтобы я мог заменить его на другую переменную, чтобы я мог просто использовать цикл foreach для этого

$AdminTask modifySSLConfig {-alias ${aliasvariablegoeshere}  -sslProtocol TLSv1.2}

РЕДАКТИРОВАТЬ:

set hold [list [$AdminTask listSSLConfigs {-scopeName (cell):Node01Cell:(node):Node01}]]
foreach aliasList [$AdminConfig show $hold] {
    foreach aliasName [$AdminConfig show $aliasList] {
        set testTrim "alias "
        set test5 [string trimleft $aliasName $testTrim]
        $AdminTask modifySSLConfig {-alias ${test5} -sslProtocol TLSv1.2}
    }
}
$AdminControl save

Я сделал этои был в состоянии извлечь только псевдоним и смог поместить его в переменную, как я хотел, но это дает мне ошибку неверного параметра.Любые идеи, почему это происходит и как я смогу решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

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

foreach aliasList [$AdminConfig list SSLConfig] {
    foreach aliasName [$AdminConfig show $aliasList alias] {
        set strTrim "alias "
        set strFinal [string trimleft $aliasName $strTrim]
        set command "-alias $strFinal -sslProtocol TLSv1.2"
        $AdminTask modifySSLConfig $command
        puts saved
    }
}
$AdminConfig save
0 голосов
/ 12 сентября 2018

Вы можете перечислить все конфигурации SSL, используя:

AdminTask.listSSLConfigs('[-all true]')

для использования JACL:

$AdminTask listSSLConfigs {-all true}

, а затем переберите список и измените все, что вам нужно. Вместо -all вы можете указать область действия, например: -scopeName (cell):localhostNode01Cell:(node):localhostNode01

Подробнее о командах SSLConfig смотрите Группа команд SSLConfigCommands для объекта AdminTask

UPDATE:

в общем, это должно работать:

foreach aliasList [$AdminTask listSSLConfigs {-scopeName (cell):PCCell1:(node):Node1}] {
    puts $aliasList  
    set splitList [split $aliasList " "]
    puts $splitList 
    set aliasname [lindex $splitList 1]
    puts $aliasname

    $AdminTask modifySSLConfig { -alias $aliasname -sslProtocol TLSv1.2 }

}

но я не могу $AdminTask правильно разрешить $aliasname параметр ... Настоятельно предлагаю вам перейти на Jython. ; -)

...