Як змусити Safari автоматично використовувати певний клієнтський сертифікат для всього сайту?


27

Використання клієнтських сертифікатів із Safari представляє ряд проблем:

  • Safari просить вибрати сертифікат клієнта на кожній сторінці сайту (дратує)
  • Safari може навіть попросити вас вибрати сертифікат на сторінці, яку ви вже відвідали, особливо якщо вам доведеться оновити свій клієнтський сертифікат

Як я можу виправити ці проблеми?

Відповіді:


29

Сафарі клієнтських сертифікатів і пов'язані з ними настройки зберігаються в Keychain менеджері з видом на сертифікат .

При виборі сертифіката для використання з веб - сайту, він зберігає ще один запис в Keychain диспетчера з видом на переваги ідентичності . На жаль, за замовчуванням він зберігає його лише на тій сторінці, на якій ви знаходилися. І ім’я, і місцезнаходження встановлюються за URL-адресою сторінки.

Щоб виправити це, ви можете просто відредагувати одну із записів налаштувань ідентичності та змінити розділ де на основну URL-адресу, як-от https://somesslsite.com/(важливий трехрізний косий рядок!). Я також поновлюю ім’я на те саме, щоб запобігти плутанині. Потім можна видалити всі інші записи налаштувань ідентичності для цього сайту.

Якщо у вас термін дії сертифікату минув, і вам довелося додати новий, я рекомендую видалити старі записи сертифікату та всі відповідні записи налаштувань ідентичності .

Щоб знайти записи уподобань сертифікатів та ідентифікаторів , відкрийте диспетчер клавіш, переконайтесь, що вибрано Усі елементи та знайдіть часткову URL-адресу та / або ім'я сертифіката, якщо це необхідно. Напевно, їх не так багато, тому якщо це не працює, просто сортуйте список за родами, і ви зможете їх легко знайти.

ПРИМІТКА: я відповідаю на це сам, оскільки зрозумів це, але хотів зберегти знання для себе та інших.


2
На жаль, Safari продовжує запитувати кожну під URL-адресу ...: - /
Tafkadasoh

видалений коментар. Відповідь DanJs вже пояснює це.
Калон

1
Не те, що вам доведеться оновити властивість місцезнаходження . Назви недостатньо.
andy

19

Часткові шляхи та підстановки тепер підтримуються в більш нових версіях ОС X. Отже, ви можете використовувати диспетчер брелоків для створення переваг ідентичності для всього веб-сайту та / або домену.

Приклад часткового контуру (зауважте, що потрібна косою косою рисою!):

https://server.mydomain.com/

Приклад підстановки:

*.mydomain.com

Повна інформація тут (зі сторінки "безпека людини"):

До 10.5.4 налаштування ідентичності для автентифікації клієнта SSL / TLS можна було встановити лише на основі URL-адреси. URL-адреса, яку відвідали, повинна відповідати найменуванню послуги саме таким чином, щоб мати перевагу.

У 10.5.4 стало можливим вказувати налаштування ідентичності на основі кожного сервера, використовуючи ім’я служби з частковою URL-адресою шляху, щоб відповідати більш конкретним шляхам на одному сервері. Наприклад, якщо параметр ідентичності для " https://www.apache-ssl.org/ " існує, він діє " https://www.apache-ssl.org/cgi/cert-export ", і так далі. Зауважте, що часткові URL-адреси контуру повинні закінчуватися символом кінцевої косої риски.

Починаючи з 10.6, можна вказати налаштування ідентичності на основі домену, використовуючи символ підстановки *як крайній лівий компонент імені послуги. На відміну від шаблонів підключення SSL, підказки переваг ідентичності можуть відповідати більш ніж одному субдомену. Наприклад, перевагу ідентичності для імені *.army.milбуде відповідати server1.subdomain1.army.milабо server2.subdomain2.army.mil. Аналогічно, перевага *.milбуде відповідати як server.army.milі server.navy.mil.


Працював для мене (працює Safari 7.0.1 на Mac OS X 10.9.1)
Tafkadasoh

3

Я сам боровся з цим, і вищевказана відповідь дала мені зрозуміти, що відбувається.

Якщо у вас був сертифікат для веб-сайту, а термін його дії закінчився, тоді вам слід видалити старий сертифікат. Потім також видаліть елементи вподобання типу вподобань для цього веб-сайту. Ці старі предмети закінчуються стільки ж, скільки термін дії сертифікату. Після їх видалення будь-які нові налаштування ідентичності будуть зберігатися та використовуватися правильно.

Так:

  1. Видаліть старий сертифікат
  2. Видаліть старі елементи налаштування посвідчення особи
  3. Додати новий сертифікат

Потім ви можете перейти на веб-сайт, вибрати новий сертифікат зі списку, це запам'ятається для певної веб-адреси. Наразі ми перебуваємо на Safari 5.1.3, і ця версія не використовуватиме будь-які символи для налаштування, вам доведеться додати перевагу для кожної зміни веб-адреси ... Сподіваюся, це допоможе комусь, просто виклавши його там, бо я цього не зробив знайти будь-яку повну відповідь.


будь ласка, зверніться до відповіді @apinstein для правильного способу зробити це
dwery
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.