Как запрограммировать пульт для шлагбаума, ворот, автоматики от CAME, Nice, Hormann, DoorHan, BFT, FAAC
У нас Вы можете купить пульты для ворот и шлагбаумов
CAME, Nice, Hormann, DoorHan, BFT, FAAC являются основными производителями автоматики на рынке. Остановимся на каждой из них подробнее.
Продукция итальянской фирмы CAME является одной из лучших на мировом рынке. Благодаря их точной автоматике, жизнь становится удобной и комфортной, а также безопаснее. Устройства Came доступны, не возникает никаких проблем при установки на любые ворота, при этом не стоит менять их, что очень экономит ваши денежные средства.
Что касается климатических условий, то следует отметить, что производители ответственно подошли к этому вопросу. Оборудование отлично выдерживает мороз, ветер, жару, пыль, дождь.
Пульты фирмы CAME
TOP-432NA – самый популярный. Благодаря тому, что он двухканальный, можно управлять отдельным устройством, например, открывать шлагбаум и ворота. Частота 433, 92 МГц. Изготовлен по технологии постоянного кода. Размер -32х68х13. Работает на расстоянии до 150 метров.
Программирование брелока Came TOP-432NA
1. Необходимо установить расстояние не больше 5 мм друг от друга.
2. Нажимаем две кнопки одновременно на новом пульте и удерживаем их. Индикатор мигает с высокой частотой.
3. Отпускаем кнопку и жмем на одну, которую необходимо запрограммировать. Теперь индикатор горит ровно, не моргает.
4. Включаем на старом брелоке быстро клавишу, с которой будет осуществляться перезапись. Все это надо успеть сделать пока светится лампочка на новом дистанционном управлении.
5. Если все будет сделано верно, тогда на «чистом» брелоке индикатор мигнет три раза. Это говорит о том, что запись произведена успешно, то есть код переписан.
TOP-432SA — двухканальный, работает на два устройства. Частота 433, 92 МГц.
Копирование пульта TOP-432SA
1. Расстояние между брелоками должно быть не больше 5мм.
2. На новом нажимаем и удерживаем кнопку, на которую будет производиться запись, пока индикатор не засветиться ровным светом.
3. Когда светиться кнопка на новом дистанционном управлении, то нажимать нужно на другом, с которого будет происходить перезапись кода.
4. Пульт должен моргнуть три раза. Все выполнено правильно.
TOP-434NA – Четырехканальный брелок с рабочей частотой 433, 92 МГц.
Программирование Came TOP-434NA
1. Нужно нажать и удерживать две кнопки одновременно на новом брелоке пока не поменяется моргание.
2. Лампа горит ровно. Кратковременно нужно нажимать кнопку, на которую будет записываться код.
3. Пока светится индикатор на первом, необходимо на втором быстро нажать клавишу, с которой надо перезаписать код.
4. Должно произойти мигание трехкратное на новом брелоке, что говорит об успешном результате.
TOP-432ЕЕ – новая модель серии ТОР. Работает в двух системах кодировки ТAM и TОР, что позволяет работать с пультами на тех объектах, где была установлена кодировка TОР и ТAM.
Программирование Came TOP-432ЕЕ с TOP-432NA
1. Подготовка к программированию. Нажимаем и удерживаем кнопку на первом брелоке-передатчике, которую нужно запрограммировать, пока не начнет мигать индикатор. Отпустите их на новом пульте.
2. Жмем на кнопку. Загореться должен индикатор без морганий.
3. В течение десяти секунд нужно поднести брелок к TOP-432NA, на котором горит лампочка. Однократно включить кнопку на мастере-брелоке. Светодиод моргнет три раза и потухнет, что говорит об успешном завершении копирования.
TOP-432ЕV — улучшенная модель серии TOP. Содержит 4096 кодовых операций. 32х69х11 мм – габаритные размеры.
Копирование брелока Came TOP-432ЕV с TOP-432NA
1. Нажмите, затем удерживайте две верхние кнопки на брелоке, который необходимо запрограммировать, до того, как индикатор не начнет моргать быстро. Теперь нужно отпустить две кнопки на пульте TOP-432NA.
2. Нажать нужно на любую клавишу, которую будете программировать.
3. Лампочка должна гореть ровным светом.
4. В течение десяти секунд поднести брелок TOP-432ЕV снизу и сзади к TOP-432NA, где светится индикатор, нажмите один раз рабочую кнопку TOP-432NA. Дистанционное устройство готово к работе в том случае, если лампочка моргнет три раза.
Пульты Came Twin – новинки компании Came, которые предназначены для защиты кода радиоуправления, незаконного копирования посторонними. Выпускаются двухкнопчатый и четырехкнопчатый. Радиобрелки с системой динамического кода.
Программирование пультов Came Twin
1. Необходимо иметь уже авторизованный брелок, который уже введен в системе с использованием кнопки приемника.
2. Зона расположения должна быть не дальше пяти метров от приемника.
3. На старом (авторизованном) устройстве нажимаем кнопку и удерживаем ее до тех пор, пока лампочка не начнет мигать ровно.
4. В течение двадцати секунд нажмите на кнопку нового брелока один раз.
5. Ждем примерно двадцать секунд, пока радиоприемник не выйдет, из так называемого, режима программирования.
6. Новый код введен. Данную процедуру можно проделать со следующим пультом. Но очень важно: один радиоприемник поддерживает не более 25 брелоков. Также отключайте те приемники, которые находятся близко, в которые не надо вводить новый код.
Came TCH-4024 и TCH-4048 – четырехканальный и восьмиканальный передатчики с частотой 40 МГц. Touch – датчик нового поколения, позволяет управлять несколькими объектами. Есть защита от случайного нажатия клавиш.
Копирование пультов Came Touch
1. Нажмите и удерживайте две верхние кнопки одновременно, пока индикатор не начнет чаще мигать.
2. Нажмите кнопку, которую нужно активировать. Индикатор засветится ровным светом.
3. Поднесите рабочий брелок сзади к новому в течение десяти секунд и нажмите на кнопку (рабочую), несколько секунд подержите.
4. Индикатор должен заморгать три раза, если все выполнено без ошибок.
Came AT 02 и AT 04 –двухканальный и четырехканальный с динамическим кодом. Atomo – удобный, изящный пульт, который гарантирует отличную работу клиентам. Обеспечивает надежность исходящего сигнала.
Программирование пультов Came Atomo
1. Выбрать зону отличного приема, не далее пяти метров.
2. На работающем брелоке нажимаем и удерживаем кнопку, пока секунд пятнадцать не будет ровно гореть индикатор.
3. На новом устройстве удержать кнопку один раз примерно двадцать секунд.
4. Ждем пятнадцать секунд и проверяем работу нового брелока.
Nice
Компания Nice занимается производством автоматизированной системы для ворот, шлагбаумов и дверей. Данная итальянская компания занимает лидирующую позицию в мире автоматике. Продукция Nice надежная, качественная, проверенная временем.
Возможность управлять всеми процессами (закрыть ворота, открыть ролеты) одним пультом, не выходя из дома.
Nice FLO 1, FLO 2, FLO 4 – ДУ с динамическим кодом. Частота 433,92 МГц. Дальность реагирования до 150 метров. Габариты 72х40х15. Выпускают одноканальный, двухканальный, четырехканальный.
Пульты Nice FLOR 1S, FLOR 2S, FLOR 4S. Выпускаются одноканальные, двухканальные, четырехканальные модели. Радиус действия – 150-200 метров.
Программирование Nice FLO, FLOR
1. Рядом должен быть приемник.
2. Пульты должны быть расположены последовательно.
3. Нажимаем кнопку любую на новом и удерживаем примерно пять секунд.
4. Нажимаем на старом пульте три раза кнопку.
5. Теперь на новом нажимаем один раз ту кнопку, которую уже нажимали сначала и отпускаем.
Nice ON 1, ON 2, ON 4, ON 9- пульты c динамическим кодом. Изящный вид, малые габариты. Работает при любых погодных условиях. Имеется специальное кольцо для крепления на ключи. Частота управления 433 МГц.
Программирование пультов Nice ON
1. Два пульта должны соприкасаться верхней частью.
2. Нажимаем любую кнопку на новом брелочке и удерживаем, пока на старом не засветится лампочка. Отпускаем клавишу, а на втором должен замигать индикатор.
3. Нажать на любую кнопку на старом брелоке, удержать на новом кнопку до тех пор, пока индикатор не загорится.
4. Отпустить кнопку на старом брелоке. Погас индикатор на новом – это успешное выполнение программирования.
Nice Very VE – двухканальный пульт со статистическим кодом.
Программирование Nice Very VE
1. Нажимаем на две кнопки одновременно, пока лампочка не останется включенной.
2. Нажимаем верхнюю клавишу, если первый на приемнике переключатель в положении «On». Нажимаем нижнюю кнопку, если микропереключатель находится в положении «Off».
3. Пункт №2 повторяем для всех десяти микропереключателей, которые расположены на приемнике.
4. Светодиод начнет быстро моргать, если десятый переключатель будет включен. Пока он мигает, если кнопки не нажаты, тогда код сохранится в памяти.
Nice Very VR- двухканальный брелок с плавающим кодом. Частота 433, 92 МГц.
Программирование пульта Nice Veri VR
1. Должен быть пульт, который уже записан в приемник. Всегда происходит запись первого в приемник с плавающим кодом, используя кнопку приемника.
2. В течение пяти минут передаем код, удерживая клавишу нового пульта.
3. Нажимаем кнопку старого устройства три раза
4. Кратковременно нажимаем кнопку нового пульта. Все запись завершена.
Hormann – качество проверенное временем
Продукция Германии. Надежность, удобство, красивый дизайн.
Данный производитель выпускает пульты с одинаковым дизайном, но с разными радиочастотами. Отличаются по цвету кнопок: голубой (868 МГц), зеленый цвет (26, 975 МГц), серый (40 МГц).
Hormann HSM 4 – четырехканальное дистанционное управление для ворот и шлагбаумов. Габаритный размер 37х110х13. Частота 868 МГц. Динамичный код.
Программирование пульта HSM 4
1. Разместить «голова к голове» брелоки.
2. Нажимаем кнопку на старом пульте и удерживаем. Лампочка должна гореть постоянно.
3. Нажать клавишу программирования на новом пульте и удержать. Индикатор будет сначала мигать медленно около четырех секунд, а затем после успешного выполнения начнет мигать быстрее.
Пульт HSE2 – двухкнопочный. Кольцо для ключей. Частота 868 МГц.
Hormann HSM с частотой 40,680 МГц. Двухкнопочные и четырехкнопочные.
Программирование Hormann HSM 40 МГц
1. Расположить новый пульт рядом со старым.
2. Нажимаем на кнопку старого пульта и удерживаем.
3. Нажать соответствующую кнопку на новом пульте. Светодиод должен мигнуть четыре раза.
4. Отпустите кнопки.
HSP4-C – пульт для ворот и шлагбаумов. Новый дизайн. Красивый внешний вид. Частота 868 МГц. Размеры – 48х48х13 мм. Количество кнопок – четыре.
Копирование пульта HSP4-C
1. Расположить брелоки рядом друг с другом.
2. Нажимаем на клавишу передатчика, который наследует код и удерживаем ее пять секунд. Индикатор должен гореть постоянно.
3. Затем нажимаем на кнопку, которую необходимо запрограммировать на новом брелоке, удерживаем ее. Около четырех секунд лампочка будет мигать медленно, но после успешного выполнения задания – быстрее.
4. Отпускаем клавиши на обоих пультах.
Doorhan
Компания Doorhan является крупный российским поставщиком автоматики для ворот, пультов, радиоприемников. Ориентируется на мировой рынок.
Doorhan Transmitter 2, Transmitter 4 – пульты с динамическим кодом. Рабочая частота 433 МГц. Предназначены для дистанционного управления двумя и четырьмя автоматическими устройствами Doorhan, а также к любой другой автоматике с имеющимся радиоприемником Doorhan. Одним брелоком можно управлять двумя (четырьмя) воротами, шлагбаумами.
Программирование пультов Doorhan с приемником DHRE-2
1. Чистим память от старых кодов. После включения питания, удерживаем кнопку записи пультов около 10 секунд. Индикатор будет мигать 10 секунд, потом потухнет, затем два раза мигнет. Все старые коды удалены.
2. Чтобы записать код пульта, нажимаем и держим 3 секунды клавишу «SW1»на плате приемника. Затем жмем на кнопку на пульте 2-3 секунды.
3. Если требуется настойка других пультов, то производиться повтор записи кода.
Запрограммировать определенный канал управления можно каждой клавишей.
Изделия компании BFT гарантирует качество и надежность
ВFT Mitto 2-12, ВFT Mitto 4-12 – двухканальный, четырехканальный пульты. Частота 433,92 МГц.
Программирование пультов ВFT
1. Нажимаем кнопку «Ок». Появится приветствие.
2. Жмем кнопку «Ок». Видим первый раздел меню «РАRAMETER».
3. Теперь несколько раз нажимаем клавишу «-», появляется меню «RADIO».
4. Снова нажимаем «Ок» и видим, что появляется раздел меню добавления брелоков в память радиоприемника «AD start».
Для добавления брелоков необходимо:
1. Нажимаем кнопку «Ок»-появляется надпись «hidden button».
2. Нажимаем на две кнопки брелока, которые надо записать.
3. Появится надпись «relise», а затем «desired button».
4. Нажать на кнопку пульта.
5. Появиться «Ок 1». Все прошло успешно.
6. Для записи других брелоков, проделаем все по аналогии.
7. После того, как произведена запись всех пультов, нажимаем два раза на кнопки <+> и <-> одновременно.
Faac – признанный лидер на рынке по производству автоматических шлагбаумов, ворот
Итальянская фирма известна не только в Европе, но и во всем мире.
XT2-868 SLH, XT4-868 SLH – двухканальное и четырехканальное дистанционное управление для ворот и шлагбаумов с 868, 35 МГц частотой. Работает при температурах от -20 до +55 С. Радиус до 50 метров.
FAAC DL2 868 SLH, FAAC DL4 868 SLH — устаревшие модели, сняты с производства. Двухканальный и четырехканальный. Новые пульты серии XT полностью заменяют предыдущие. Отличаются только стильным дизайном, улучшенными характеристиками.
Программирование пультов FAAC серии XT2-868 SLH и XT4-868 SLH
Необходим мастер-брелок, то есть тот, который записан первым (master), а также новый пульт (slave).
1. Нажимаем на старом устройстве кнопки P1 и Р2 сразу на две секунды. Светодиод моргнул, тогда можно начинать программирование, так как он увидел данное устройство.
2. Напротив друг друга располагаем брелоки.
3. Индикатор горит постоянно. Нажимаем на старом пульте клавишу, на которую следует перезаписать.
4. Нажимаем на пульте slave кнопку для программирования. Отпускаем кнопку после того, как лампочка промигает два раза.
5. Все копирование завершено. Действия можно проделать на всех других кнопках и других пультах.
В заключении хотелось бы сказать, что сейчас в наше время система автоматического управления устанавливается на все виды шлагбаумов, ворот, дверей. Управлять можно с помощью отдельного пульта, что очень сильно повышает уровень безопасности, особенно от краж.
Пользоваться автоматическим пультом – это одно удовольствие. Главное, что можно его всегда носить с собой на связке с ключами. Также можно, например, в плохую погоду, не выходя из дома, воспользоваться им. Все можно подобрать и установить по желанию клиента.
Ссылки по теме:
Купить брелки
Купить автомаческие шлагбаумы BFT, CAME
Купить автомаческие шлагбаумы DoorHan и пульты к ним
Купить автоматику и пульты Hormann
Ворота Своими Руками ➤ Как Сделать Ворота Своими Руками (Установка)
Здравствуйте, эта статья – пошаговая
инструкция, как сделать ворота своими руками. Для простоты и наглядности мы
используем схемы, чертежи и эскизы конструкции ворот.
Мы расскажем об этапах производства, что бы вы могли максимально точно спланировать, что и зачем вы будете делать.
Ворота своими руками – как изготовить и установить из профнастила, деревянные или кованные?
Есть два самых популярных типа вьездных ворот, как их изготовить вы можете прочитать в статьях выше.
Я считаю, изготовление ворота лучше сделать самостоятельно. Дело в том, что в этом нет ничего сложного. А в наших условиях цена имеет, все таки, определенную роль.
Дело в том, что при самостоятельной сварке ворота получаться дешевле и более качественные.
Вы ведь не будете экономить на краске, качестве профнастила и профильных труб… А для монтажной бригады которую вы наймете, каждая копейка на счету.
И установить и зашить вы сможете чем захотите – профлист (профнастил), поликарбонат, деревянные, кованные, металлические, с калиткой или без.
Как выбрать и установить фурнитуру, комплектующие и автоматику для ворот
Расчет или цены (смета) — установки ворот своими руками
Давайте для начала прикинем, сколько понадобиться материалов, чтобы сделать ворота и какова получится их общая стоимость. Пускай створка распашных ворот будет размером 1,5х2 метра.
Для ворот такого размера понадобиться:
- ➠ Труба прямоугольная 60х30мм – 39,2кг
- ➠ Труба прямоугольная 30х20мм – 21,6кг
- ➠ Профнастил окрашенный — 3м
Стоимость металлоизделий из черной стали около 20000 гривен за тонну, а цена за один квадратный метр профнастила приблизительно 110 гривен. Теперь посчитаем стоимость материалов по отдельности:
- ➠ Труба прямоугольная 60х30мм: 0,0392т*20000грн = 784грн
- ➠ Труба прямоугольная 30х20мм: 0,0216т*20000грн = 432грн
- ➠ Профнастил окрашенный: 3м*110грн = 330грн
Просуммируем полученные результаты: 784грн + 432грн + 330грн = 1546грн.
Это цена за одну створку, а две будут стоить 3092грн.
Если Вы хотите, чтобы Ваши ворота были откатными, необходимо еще купить фурнитуру, стоимость которой на сегодняшний день от 2500 гривен.
Соглашусь, что приведенный расчет не является очень точным, потому что не включены саморезы, краска, замки для запирания и так далее, но даже с ними стоимость будет около 5000 тысяч. Я все это веду к тому, что делая ворота самостоятельно, Вы экономите приличную сумму, которая составит немалые деньги, поскольку фирмы, которые изготавливают ворота, берут за свои услуги 12-15 тысяч.
Что же касается самого изготовления, здесь тоже нет ничего сложного и военного. Я приведу пример производства ворот с кирпичными столбами и металлическими вставками в них. Конечно, это не единственный возможный вариант и Ваши ворота, могут быть какими угодно, но я просто хочу показать, что в самостоятельном изготовлении нет ничего сложного.
Вот коротко, что понадобится выполнить:
Выкопать ямы для фундаментов столбов:
Установить металлические элементы столбов и забетонировать их:
Если Ваши ворота откатные, понадобится еще забетонировать швеллер для установки роликовых опор и электропривода, если Вы захотите автоматизировать ворота:
Сделать кирпичную кладку с заложением закладных деталей для крепления нащельников или металлических накладок:
Если Ваши ворота будут распашными, то лучше сразу на столбах установить закладные детали для крепления автоматики с учетом открытия ворот наружу или вовнутрь:
Потом к закладным воротам крепим нащельники, если они откатные. Или металлические накладки, если ворота распашные:
После изготавливаем каркасы и Ваши ворота готовы.
Фурнитура для откатных ворот
Что касается откатных ворот – то для их изготовления, понадобится так называемый комплект фурнитуры, в который обычно входит:
- ➠ Направляющий рельс
- ➠ Роликовая каретка – 2 штуки
- ➠ Верхняя пластина с роликами
- ➠ Нижний улавливатель
- ➠ Концевой ролик
- ➠ Заглуши
- ➠ Монтажная пластина
Направляющий рельс — Как правило, это первый элемент, с которого начинается выбор той или иной модели фурнитуры, потому что от него в дальнейшем во многом будет зависеть нормальная работа ворот, а именно насколько плавно и бесшумно будет двигаться створка.
Первое, на что это набор ненужных и некорректных слов нужно обратить внимание, это его геометрия. Если посмотреть на его поперечный разрез, изгибы профиля не должны иметь явно выраженных закруглений, а должны стремиться к более острым углам.
Нижние полки должны быть симметричны и находиться в одной горизонтали – это будет обеспечивать более долговечную работу опорных кареток и в частности их роликов.
В продольном направлении, нужно смотреть, чтобы рельс был ровным от начала и до конца – это будет обеспечивать плавное качение створки ворот.
Направляющий рельс крепится к нижней несущей трубе каркаса при помощи монтажных болтов.
Роликовая каретка — Это также немаловажный элемент фурнитуры ворот, как и направляющий рельс. Для того, чтобы створка двигалась, используются две каретки.
Одни производители делают ролики из металла, а другие из полимеров. Если с металлом все понятно, то полимеры можно обозначить как «кот в мешке». Дело в том, что не известно, как они переживут низкие или высокие температуры. При низких, под нагрузкой могут попросту раскрошиться, а при высоких стать пластичными и потерять форму, которая не восстановится.
Следует обращать внимание на зазор между роликами каретки и направляющего рельса, если он будет большим, то ворота при закрывании будут «клевать» и возможно, что даже не будут попадать в нижний улавливатель, в результате чего он будет погнут, или вообще разобьется концевой ролик.
Для ворот необходимо две роликовых опоры. Эти элементы устанавливаются на закладную деталь (швеллер) на как можно большем расстоянии друг от друга.
Верхняя пластина с роликами удерживает верхнюю часть ворот и обеспечивает их движение строго по необходимой линии. В зависимости от модели фурнитуры данная пластина может иметь два или четыре ролика.
Сам ролик бывает с пластиковым или с резиновым кожухом. Вариант с резиной будет лучше, потому что не будет царапаться полотно ворот.
Верхний улавливатель — Представляет собой П-образную пластину, которая должна жестко удерживать верхний свободный край створки в закрытом положении. Кстати, обращайте внимание на комплектацию, потому что некоторые производители данный элемент не включают, а продают его отдельно.
Нижний улавливатель — Выполняет ту же функцию, что и верхний, но при этом еще и снижает нагрузку на роликовые каретки от ворот, когда они находятся в закрытом положении, за счет полки.
Данный элемент рекомендую выбирать с толщиной стенок не менее 3мм, а также, чтобы он имел правильную геометрическую форму.
Улавливатель приваривается к нащельнику, но прежде чем это сделать, нужно убедиться, что при наезде ролика на его полку створка будет подниматься на 3-4мм.
Концевой ролик — На сегодняшний день практически все производители для ролика используют пластик, хотя остались еще такие, которые делают его из металла. Ролик, наезжая на нижний улавливатель опирается на его полку, тем самым частично снимает нагрузку на роликовые каретки от ворот.
Данный элемент заводится с торца в направляющий рельс и крепится при помощи двух болтов.
Заглушки — Устанавливаются по краям направляющего рельса. Эти элементы на первый взгляд могут показаться не такими уж и важными, но польза от них очевидна – в направляющий рельс не будут набиваться снег и грязь.
Монтажная пластина — Данный элемент у производителей фурнитуры хоть и не входит в основной комплект, но я его рекомендую покупать, потому что с ним будет значительно проще выставить роликовые каретки.
Замок — Вам нужно учитывать, что для откатных ворот идет специальный врезной замок. Выбирать нужно такой, у которого основные части механизма сделаны из латуни, а не силумина. Силумин быстро окисляется под воздействием атмосферных осадков и замок выходит строя.
На рекомендованную нашими специалистами фурнитуру гарантия 5 лет и это один из наиболее длительных сроков на рынке
Кроме того, вместе с ней Вы получите бесплатно разработанный чертеж с указанием всех необходимых размеров и количеством материалов. Все что от Вас потребуется, это сообщить размеры проема Ваших ворот.
Также мы Вам подарим пошаговую инструкцию по изготовлению откатных ворот, в которой подробно расписаны все этапы выполнения работ.
Фурнитура для распашных ворот
Для распашных ворот необходим такой набор фурнитуры:
- ➠ Петли
- ➠ Замок
- ➠ Фиксаторы
Петли — могут быть самые обычные, но можно использовать специальные с шариком, за счет которого ход створки будет значительно легче. Петли привариваются к каркасу ворот и металлической накладке, а расстояние между парами петель должно быть как можно шире.
Замок — можно установить обычный накладной или врезной. Если Вы решили остановить свой выбор на врезном замке, необходимо заранее сделать вырезы в несущих каркасах створки.
Можно также установить электромеханический замок конструкция которого позволяет открывать ворота на расстоянии.
Фиксаторы — нужны, чтобы застопорить створки в открытом положении. По сути это обычные штыри, которые находятся на створках и заходят в установленные трубы в основании, чтобы ворота от порывов ветра никого не ударили.
Критерии выбора автоматики
При выборе той или иной модели воротного оборудования следует обращать внимание на:
- ➠ Материалы, из которых сделан привод
- ➠ Нагрузки, которые приводу необходимо будет преодолевать во время работы
❖ Материал из которого выполнен привод
Материалы — Сразу скажу, что выбирая оборудование, не стоит обращать внимание на производителя или страну где оно выпущено, а только на материалы, из которых сделан привод.
Если у мотор-редуктора есть элементы из технополимеров (пластик), то это далеко не лучший вариант для работы в климатических условиях Украины.
Дело в том, что температурный диапазон украинского климата не редко выходит за пределы допустимого для технополимеров. При низких температурах полимер становиться очень хрупким и разрушается, а при высоких становится пластичным и теряет первоначальную форму.
Для долговечной работы автоматики ее мотор-редуктор должен быть полностью металлическим.
❖ Нагрузки на привод
Автоматика подбирается в зависимости от длины и массы створки, региона, где она будет работать, а также ворота какого назначения ей придется обслуживать.
Практически каждый производитель в паспорте оборудования или инструкции указывает допустимые длину и массу створки, и здесь следует учитывать, что эти значения максимальные и к тому же обратно пропорциональные. То есть одновременно нельзя, чтобы ворота имели максимальный вес и длину. Также эти параметры ворот даны без учета других временных и долговременных нагрузок.
Регион работы автоматики, а точнее климатическая зона, также играет роль, значение имеет так как ветер (особенно у распашных ворот), налипший снег на створку и обледенение значительно утяжеляют ее, требуя от привода дополнительных усилий.
Что касается назначения автоматики, то она может быть бытовой или промышленной.
В первом случае данное оборудование способно работать только на воротах, от которых не требуется высокая пропускная способность, а во втором – где большой поток людей и транспорта.
Как правило, бытовые приводы используются на воротах частных домов или дач, а промышленные – на воротах многоквартирных домов, бизнес центров и других аналогичных объектах.
Автоматика для откатных ворот
Чтобы автоматизировать раздвижные ворота, необходим как минимум такой комплект оборудования и аксессуаров:
- ❶ Привод со встроенным блоком управления
- ❷ Концевые выключатели
- ❸ Зубчатая рейка
- ❹ Пульт дистанционного управления
❖ Привод
Привод для откатных ворот необходим всего один и устанавливается он на закладную деталь между роликовыми опорами.
Створка приводится в движение вращающейся на валу мотор-редуктора шестеренкой, которая сопряжена зубчатыми передачами с рейкой, расположенной на каркасе ворот.
Блок управления находится в корпусе привода и представляет собой электронную плату, которая отвечает за всю работу автоматики.
❖ Концевые выключатели
Концевые выключатели останавливают привод, когда ворота достигают крайнего открытого или закрытого положения.
Бывает две системы отключения: механическая и магнитная.
У механической к приводу подъезжает один из металлических кронштейнов, закрепленных по краям зубчатой рейки, и давит на пружинку, что на корпусе мотор-редуктора, а та в свою очередь, отгибаясь, давит на выключатель, который останавливает автоматику.
У этой системы есть минус, который проявляется зимой. Пружина может примерзнуть к кнопке выключателя, и Вы не сможете запустить привод.
Еще зубчатая рейка может загребать снег до образования кома, который вместо металлического кронштейна может отключить оборудование раньше, чем это необходимо.
С магнитной системой таких проблем нет, потому что вместо металлических кронштейнов стоят магниты, а на приводе — геркон. Отключение автоматики осуществляется за счет магнитного поля, на которое мороз и снег не оказывают влияние.
❖ Зубчатая рейка
Зубчатая рейка может быть металлической или пластиковой, но в большинстве случаев применяется именно рейка из металла, потому что она более долговечна. Рейку в движение приводит ведущая шестеренка мотор-редуктора. Данный элемент крепится к воротам при помощи специальных болтов.
Автоматика для распашных ворот
Чтобы автоматизировать распашные ворота как минимум понадобятся:
- ❶ Два привода
- ❷ Шкаф с блоком управления
- ❸ Пульт дистанционного управления
❖ Приводы
Приводы для такого типа ворот могут быть линейными, рычажными или скрытой установки.
☑ Линейные приводы
Линейные имеют самую простую и долговечную конструкцию, к тому же их стоимость наиболее низкая, за что они и получили широкое распространение.
☑ Рычажные приводы
Рычажные приводы устанавливаются на очень широкие столбы. Если их сравнивать с линейными мотор-редукторами, они значительно дороже, а конструкция менее надежная.
☑ Приводы скрытой установки
Приводы скрытой установки очень дорогие, ими оборудую ворота, на створках которых не должно быть видно ничего лишнего.
☑ Блок управления
Блок управления у автоматики распашных ворот находится в специальном шкафу, который крепится к забору. Как и у откатных, блок представляет собой электронную плату.
Автоматика для гаражных (секционных) ворот
Секционные ворота въезда в гараж являются очень практичным вариантом, потому что при открывании под потолок не занимают места. На сегодняшний день на рынке есть множество предложений от разных производителей автоматики для такого типа ворот. Вы можете обратиться к одному из наших специалистов для получения всеобъемлющей информации касательно этого воротного оборудования.
Элементы автоматики, которыми еще можно оборудовать ворота
К автоматическим системам как откатных, так и распашных ворот можно еще добавить элементы управления и безопасности.
☑ Для управления
Для управления кроме пультов можно использовать кодовую клавиатуру, считыватель карт, ключ-кнопку, кнопочный выключатель и так далее. Перечень моделей этих элементов у каждого производителя достаточно велик.
☑ Для безопасности
Для безопасности ворота можно оборудовать сигнальной лампой или фотоэлементами.
☑ Оснащение ворот сигнальными лампами
Сигнальная лампа во время движения ворот привлекает внимание окружающих световым сигналом. Особенно данный аксессуар будет полезен в темное время суток.
☑ Оснащение ворот фотоэлементами
Фотоэлементы предназначены для выявления препятствия до того, как створка его ударит.
Устанавливаются они парами на столбы ворот или специальные стойки. Во время работы автоматики между ними создается луч, который будучи оборванным препятствием, послужит сигналом для остановки ворот.
Узнайте стоимость вашей автоматики со скидкой
+38 (067) 538 57 85 +38 (095) 357 46 65
Покупка воротного оборудования в нашей компании
Автоматику, которую мы рекомендуем Вы можете испытывать на протяжении 365 дней. То есть, Вы в течение года пользуетесь оборудованием, приобретенным у нас и в случае, если оно Вам не понравилось, просто верните его нам, а мы в свою очередь вернем Ваши деньги.
Доставка всего оборудования, которое рекомендовано нами, осуществляется за наш счет наиболее удобной компанией-перевозчиком. После оформления заказа, покупка к Вам отправиться в течение суток.
Вам не обязательно делать предоплату, Вы можете расплатиться за оборудование по факту его доставки.
Есть вопросы?Задавайте!+38 (067) 538 57 85
+38 (095) 357 46 65
Как запрограммировать пульт Came — статьи от Алюрол
Пульты-брелки итальянской компании Came предназначены для дистанционного управления автоматическими системами шлагбаумов и ворот. Эта фирма также производит соответствующую автоматику; радиопульт обычно прилагается в комплекте. Покупателям доступно самостоятельное программирование устройства с использованием несложной инструкции.
Характеристики и метод настройки
Все товары итальянского производителя отличает простота использования, надежность всех элементов, защита от постороннего вмешательства в их применение. Продукция тщательно тестируется и сертифицируется, поэтому приобретение оригинальных товаров фирмы гарантирует наличие и полную безупречную реализацию всех заявленных производителем свойств.
Радиопульты имеют компактный размер и очень удобны в использовании. Корпус всех модификаций легко помещается в ладонь. Предусмотрено отверстия для крепления к связке ключей. Приспособление может быть рассчитано на управление двумя или четырьмя различными механизмами.
Производителем предусмотрен определенный алгоритм, позволяющий осуществить самостоятельное программирование пульта Came. Следует отметить, что, в отличие от некоторых аналогов, в блоке управления шлагбаумом или воротами регистрируется единственный радиопульт. Если возникает необходимость в дополнительных экземплярах, следует произвести копирование с использованием «главного» радиобрелка. При попытке записать в приемник еще один брелок, блокируется работа всей системы.
Такой принцип удобен в ситуации с потерей первого радиобрелка: в этом случае приобретается и программируется замещающее устройство, тогда как утерянное автоматически стирается из памяти контролирующего блока, так что найденный брелок нельзя будет уже использовать. Главное, чтобы в руки злоумышленников не попал каким-то образом рабочий пульт-брелок, от которого можно настроить еще один экземпляр.
Со следованием инструкции, дающей указания, как запрограммировать пульт Came, обычно не возникает никаких проблем. В блоке контроля системы предусмотрена кнопка, нажатие которой включает мигающий световой индикатор, соответствующий началу записи сигнала. После нажатия указанной в инструкции кнопки пульта-брелка индикатор начинает гореть ровным светом, что соответствует успешному совмещению сигналов устройств.
Как перепрограммировать пульт от ворот
Кодировка пультов для ворот. Программирование брелока от ворот
Многие владельцы автоматических ворот и шлагбаумов, очень часто стыкаются с вопросом — как запрограммировать пульт? Такая необходимость может возникнуть во время приобретения нового или расширения функций уже имеющегося в использовании устройства.
Чаще всего, решая подобные задачи, заказчики предпочитают обращаться в специализированные сервисные центры, специалисты которых точно знают, как запрограммировать пульт от ворот и смогут произвести инсталляцию с учетом всех особенностей каждой конкретной модели. Несмотря на возможные дополнительные расходы, здесь вам всегда будет предоставлена гарантия качественного выполнения. Тем не менее многие владельцы устройств дистанционного доступа к воротам предпочитают самостоятельно производить программирование. Для этого вам понадобятся определенные знания и навыки работы с подобными устройствами.
Распространенные марки пультов для программирования
К сожалению, далеко не все устройства дистанционного управления воротными системами имеют одинаковые установки. Программирование пульта необходимо производить с учетом производителя, который его поставляет на рынок России. Наиболее популярными в нашей стране принято считать:
Каждая из этих торговых марок имеет свои особенности и требует знаний особенностей инсталляции программного обеспечения.
Как запрограммировать пульт
Профессиональное программирование пульта для шлагбаума может выполняться по нескольким распространенным алгоритмам, наиболее часто из которых встречается два:
- метод копирования кода. В этом случае сигнал первого используемого кода записывается в приемник, а остальные просто копируются из первоисточника. Этот алгоритм чаще всего реализован в конструкциях производителя NICE. Хотя подобные системы весьма удобны в эксплуатации, их защитные функции могут вызывать массу вопросов,
- алгоритм Doorhan несколько иной и требует, выполняя программирование пульта для ворот, записать каждый сигнал в память приемника. Этот вариант получил широкое распространение на предприятиях, с большим количеством пользователей, которым необходимо обеспечить доступ на территорию.
Услуги специалистов по программированию пультов от ворот
Наша компания всегда готова предложить услуги опытных специалистов, которые точно знают, как запрограммировать пульт для шлагбаума той или другой марки. За дополнительной информацией и заявкам обращайтесь по телефонам или оставляйте сообщения на электронной почте.
CAME, Nice, Hormann, DoorHan, BFT , FAAC являются основными производителями автоматики на рынке. Остановимся на каждой из них подробнее.
Продукция итальянской фирмы CAME является одной из лучших на мировом рынке. Благодаря их точной автоматике, жизнь становится удобной и комфортной, а также безопаснее. Устройства Came доступны, не возникает никаких проблем при установки на любые ворота, при этом не стоит менять их, что очень экономит ваши денежные средства.
Что касается климатических условий, то следует отметить, что производители ответственно подошли к этому вопросу. Оборудование отлично выдерживает мороз, ветер, жару, пыль, дождь.
Пульты фирмы CAME
TOP-432NA — самый популярный. Благодаря тому, что он двухканальный, можно управлять отдельным устройством, например, открывать шлагбаум и ворота. Частота 433, 92 МГц. Изготовлен по технологии постоянного кода. Размер -32х68х13. Работает на расстоянии до 150 метров.
Программирование брелока Came TOP-432NA
1. Необходимо установить расстояние не больше 5 мм друг от друга.
2. Нажимаем две кнопки одновременно на новом пульте и удерживаем их. Индикатор мигает с высокой частотой.
3. Отпускаем кнопку и жмем на одну, которую необходимо запрограммировать. Теперь индикатор горит ровно, не моргает.
4. Включаем на старом брелоке быстро клавишу, с которой будет осуществляться перезапись. Все это надо успеть сделать пока светится лампочка на новом дистанционном управлении.
5. Если все будет сделано верно, тогда на «чистом» брелоке индикатор мигнет три раза. Это говорит о том, что запись произведена успешно, то есть код переписан.
TOP-432SA — двухканальный, работает на два устройства. Частота 433, 92 МГц.
Копирование пульта TOP-432SA
1. Расстояние между брелоками должно быть не больше 5мм.
2. На новом нажимаем и удерживаем кнопку, на которую будет производиться запись, пока индикатор не засветиться ровным светом.
3. Когда светиться кнопка на новом дистанционном управлении, то нажимать нужно на другом, с которого будет происходить перезапись кода.
4. Пульт должен моргнуть три раза. Все выполнено правильно.
TOP-434NA — Четырехканальный брелок с рабочей частотой 433, 92 МГц.
Программирование Came TOP-434NA
1. Нужно нажать и удерживать две кнопки одновременно на новом брелоке пока не поменяется моргание.
2. Лампа горит ровно. Кратковременно нужно нажимать кнопку, на которую будет записываться код.
3. Пока светится индикатор на первом, необходимо на втором быстро нажать клавишу, с которой надо перезаписать код.
4. Должно произойти мигание трехкратное на новом брелоке, что говорит об успешном результате.
TOP-432ЕЕ — новая модель серии ТОР. Работает в двух системах кодировки ТAM и TОР, что позволяет работать с пультами на тех объектах, где была установлена кодировка TОР и ТAM.
Программирование с TOP-432NA
1. Подготовка к программированию. Нажимаем и удерживаем кнопку на первом брелоке-передатчике, которую нужно запрограммировать, пока не начнет мигать индикатор. Отпустите их на новом пульте.
2. Жмем на кнопку. Загореться должен индикатор без морганий.
3. В течение десяти секунд нужно поднести брелок к TOP-432NA, на котором горит лампочка. Однократно включить кнопку на мастере-брелоке. Светодиод моргнет три раза и потухнет, что говорит об успешном завершении копирования.
TOP-432ЕV — улучшенная модель серии TOP. Содержит 4096 кодовых операций. 32х69х11 мм — габаритные размеры.
Копирование брелока Came TOP-432ЕV с TOP-432NA
1. Нажмите, затем удерживайте две верхние кнопки на брелоке, который необходимо запрограммировать, до того, как индикатор не начнет моргать быстро. Теперь нужно отпустить две кнопки на пульте TOP-432NA.
2. Нажать нужно на любую клавишу, которую будете программировать.
3. Лампочка должна гореть ровным светом.
4. В течение десяти секунд поднести брелок TOP-432ЕV снизу и сзади к TOP-432NA, где светится индикатор, нажмите один раз рабочую кнопку TOP-432NA. Дистанционное устройство готово к работе в том случае, если лампочка моргнет три раза.
Пульты — новинки компании Came, которые предназначены для защиты кода радиоуправления, незаконного копирования посторонними. Выпускаются двухкнопчатый и четырехкнопчатый. Радиобрелки с системой динамического кода.
Программирование пультов Came Twin
1. Необходимо иметь уже авторизованный брелок, который уже введен в системе с использованием кнопки приемника.
2. Зона расположения должна быть не дальше пяти метров от приемника.
4. В течение двадцати секунд нажмите на кнопку нового брелока один раз.
5. Ждем примерно двадцать секунд, пока радиоприемник не выйдет, из так называемого, режима программирования.
6. Новый код введен. Данную процедуру можно проделать со следующим пультом. Но очень важно: один радиоприемник поддерживает не более 25 брелоков. Также отключайте те приемники, которые находятся близко, в которые не надо вводить новый код.
Came TCH-4024 и TCH-4048 — четырехканальный и восьмиканальный передатчики с частотой 40 МГц. Touch — датчик нового поколения, позволяет управлять несколькими объектами. Есть защита от случайного нажатия клавиш.
Копирование пультов Came Touch
1. Нажмите и удерживайте две верхние кнопки одновременно, пока индикатор не начнет чаще мигать.
2. Нажмите кнопку, которую нужно активировать. Индикатор засветится ровным светом.
3. Поднесите рабочий брелок сзади к новому в течение десяти секунд и нажмите на кнопку (рабочую), несколько секунд подержите.
4. Индикатор должен заморгать три раза, если все выполнено без ошибок.
Came AT 02 и AT 04 -двухканальный и четырехканальный с динамическим кодом. Atomo — удобный, изящный пульт, который гарантирует отличную работу клиентам. Обеспечивает надежность исходящего сигнала.
Программирование пультов Came Atomo
1. Выбрать зону отличного приема, не далее пяти метров.
2. На работающем брелоке нажимаем и удерживаем кнопку, пока секунд пятнадцать не будет ровно гореть индикатор.
3. На новом устройстве удержать кнопку один раз примерно двадцать секунд.
4. Ждем пятнадцать секунд и проверяем работу нового брелока.
Компания Nice занимается производством автоматизированной системы для ворот, шлагбаумов и дверей. Данная итальянская компания занимает лидирующую позицию в мире автоматике. Продукция Nice надежная, качественная, проверенная временем.
Возможность управлять всеми процессами (закрыть ворота, открыть ролеты) одним пультом, не выходя из дома.
Nice FLO 1, FLO 2, FLO 4 — ДУ с динамическим кодом. Частота 433,92 МГц. Дальность реагирования до 150 метров. Габариты 72х40х15. Выпускают одноканальный, двухканальный, четырехканальный.
Пульты Nice FLOR 1S, FLOR 2S, FLOR 4S. Выпускаются одноканальные, двухканальные, четырехканальные модели. Радиус действия — 150-200 метров.
Программирование Nice FLO, FLOR
1. Рядом должен быть приемник.
2. Пульты должны быть расположены последовательно.
3. Нажимаем кнопку любую на новом и удерживаем примерно пять секунд.
4. Нажимаем на старом пульте три раза кнопку.
5. Теперь на новом нажимаем один раз ту кнопку, которую уже нажимали сначала и отпускаем.
Nice ON 1, ON 2, ON 4, ON 9- пульты c динамическим кодом. Изящный вид, малые габариты. Работает при любых погодных условиях. Имеется специальное кольцо для крепления на ключи. Частота управления 433 МГц.
Программирование пультов Nice ON
1. Два пульта должны соприкасаться верхней частью.
2. Нажимаем любую кнопку на новом брелочке и удерживаем, пока на старом не засветится лампочка. Отпускаем клавишу, а на втором должен замигать индикатор.
3. Нажать на любую кнопку на старом брелоке, удержать на новом кнопку до тех пор, пока индикатор не загорится.
4. Отпустить кнопку на старом брелоке. Погас индикатор на новом — это успешное выполнение программирования.
Nice Very VE — двухканальный пульт со статистическим кодом.
Программирование Nice Very VE
1. Нажимаем на две кнопки одновременно, пока лампочка не останется включенной.
2. Нажимаем верхнюю клавишу, если первый на приемнике переключатель в положении «On». Нажимаем нижнюю кнопку, если микропереключатель находится в положении «Off».
3. Пункт №2 повторяем для всех десяти микропереключателей, которые расположены на приемнике.
4. Светодиод начнет быстро моргать, если десятый переключатель будет включен. Пока он мигает, если кнопки не нажаты, тогда код сохранится в памяти.
Nice Very VR- двухканальный брелок с плавающим кодом. Частота 433, 92 МГц.
Программирование пульта Nice Veri VR
1. Должен быть пульт, который уже записан в приемник. Всегда происходит запись первого в приемник с плавающим кодом, используя кнопку приемника.
2. В течение пяти минут передаем код, удерживая клавишу нового пульта.
3. Нажимаем кнопку старого устройства три раза
4. Кратковременно нажимаем кнопку нового пульта. Все запись завершена.
Hormann — качество проверенное временем
Продукция Германии. Надежность, удобство, красивый дизайн.
Данный производитель выпускает пульты с одинаковым дизайном, но с разными радиочастотами. Отличаются по цвету кнопок: голубой (868 МГц), зеленый цвет (26, 975 МГц), серый (40 МГц).
Hormann HSM 4 — четырехканальное дистанционное управление для ворот и шлагбаумов. Габаритный размер 37х110х13. Частота 868 МГц. Динамичный код.
Программирование пульта HSM 4
1. Разместить «голова к голове» брелоки.
2. Нажимаем кнопку на старом пульте и удерживаем. Лампочка должна гореть постоянно.
3. Нажать клавишу программирования на новом пульте и удержать. Индикатор будет сначала мигать медленно около четырех секунд, а затем после успешного выполнения начнет мигать быстрее.
Пульт HSE2 — двухкнопочный. Кольцо для ключей. Частота 868 МГц.
Hormann HSM с частотой 40,680 МГц. Двухкнопочные и четырехкнопочные.
Программирование Hormann HSM 40 МГц
1. Расположить новый пульт рядом со старым.
2. Нажимаем на кнопку старого пульта и удерживаем.
3. Нажать соответствующую кнопку на новом пульте. Светодиод должен мигнуть четыре раза.
4. Отпустите кнопки.
HSP4-C — пульт для ворот и шлагбаумов. Новый дизайн. Красивый внешний вид. Частота 868 МГц. Размеры — 48х48х13 мм. Количество кнопок — четыре.
Копирование пульта HSP4-C
1. Расположить брелоки рядом друг с другом.
2. Нажимаем на клавишу передатчика, который наследует код и удерживаем ее пять секунд. Индикатор должен гореть постоянно.
3. Затем нажимаем на кнопку, которую необходимо запрограммировать на новом брелоке, удерживаем ее. Около четырех секунд лампочка будет мигать медленно, но после успешного выполнения задания — быстрее.
4. Отпускаем клавиши на обоих пультах.
Компания Doorhan является крупный российским поставщиком автоматики для ворот, пультов, радиоприемников. Ориентируется на мировой рынок.
Doorhan Transmitter 2, Transmitter 4 — пульты с динамическим кодом. Рабочая частота 433 МГц. Предназначены для дистанционного управления двумя и четырьмя автоматическими устройствами Doorhan, а также к любой другой автоматике с имеющимся радиоприемником Doorhan. Одним брелоком можно управлять двумя (четырьмя) воротами, шлагбаумами.
Программирование пультов Doorhan с приемником DHRE-2
1. Чистим память от старых кодов. После включения питания, удерживаем кнопку записи пультов около 10 секунд. Индикатор будет мигать 10 секунд, потом потухнет, затем два раза мигнет. Все старые коды удалены.
2. Чтобы записать код пульта, нажимаем и держим 3 секунды клавишу «SW1»на плате приемника. Затем жмем на кнопку на пульте 2-3 секунды.
3. Если требуется настойка других пультов, то производиться повтор записи кода.
Запрограммировать определенный канал управления можно каждой клавишей.
Изделия компании BFT гарантирует качество и надежность
ВFT -12, ВFT Mitto 4 -12 — двухканальный, четырехканальный пульты. Частота 433,92 МГц.
Программирование пультов ВFT
1. Нажимаем кнопку «Ок». Появится приветствие.
2. Жмем кнопку «Ок». Видим первый раздел меню «РАRAMETER».
3. Теперь несколько раз нажимаем клавишу «-», появляется меню «RADIO».
4. Снова нажимаем «Ок» и видим, что появляется раздел меню добавления брелоков в память радиоприемника «AD start».
Для добавления брелоков необходимо:
1. Нажимаем кнопку «Ок»-появляется надпись «hidden button».
2. Нажимаем на две кнопки брелока, которые надо записать.
3. Появится надпись «relise», а затем «desired button».
4. Нажать на кнопку пульта.
5. Появиться «Ок 1». Все прошло успешно.
6. Для записи других брелоков, проделаем все по аналогии.
7. После того, как произведена запись всех пультов, нажимаем два раза на кнопки и одновременно.
Faac — признанный лидер на рынке по производству автоматических шлагбаумов, ворот
Итальянская фирма известна не только в Европе, но и во всем мире.
XT2-868 SLH, XT4-868 SLH — двухканальное и четырехканальное дистанционное управление для ворот и шлагбаумов с 868, 35 МГц частотой. Работает при температурах от -20 до +55 С. Радиус до 50 метров.
FAAC DL2 868 SLH, FAAC DL4 868 SLH — устаревшие модели, сняты с производства. Двухканальный и четырехканальный. Новые пульты серии XT полностью заменяют предыдущие. Отличаются только стильным дизайном, улучшенными характеристиками.
Программирование пультов FAAC серии XT2-868 SLH и XT4-868 SLH
Необходим мастер-брелок, то есть тот, который записан первым (master), а также новый пульт (slave).
1. Нажимаем на старом устройстве кнопки P1 и Р2 сразу на две секунды. Светодиод моргнул, тогда можно начинать программирование, так как он увидел данное устройство.
3. Индикатор горит постоянно. Нажимаем на старом пульте клавишу, на которую следует перезаписать.
4. Нажимаем на пульте slave кнопку для программирования. Отпускаем кнопку после того, как лампочка промигает два раза.
5. Все копирование завершено. Действия можно проделать на всех других кнопках и других пультах.
В заключении хотелось бы сказать, что сейчас в наше время система автоматического управления устанавливается на все виды шлагбаумов, ворот, дверей. Управлять можно с помощью отдельного пульта, что очень сильно повышает уровень безопасности, особенно от краж.
Пользоваться автоматическим пультом — это одно удовольствие. Главное, что можно его всегда носить с
Пульт Nice Flor-s был
настройка, кодировка и перепрограммирование брелоков
Универсальные пульты от ворот позволяют одновременно управлять несколькими устройствами. Современные фирмы-производители предлагают один прибор, к которому подключают множество брелоков. Но иногда устройства теряются или ломаются, и их необходимо заменить новыми. Поэтому владельцам необходимо знать, как запрограммировать пульт от ворот.
Запрограмиировать пульт можно самомуОсобенности пультов
Сначала пульт нужно прописать на плате управления в приёмнике. Нет универсального алгоритма программирования устройства, так как кодировка у разных компаний отличается. Наиболее известные фирмы-производители пультов для ворот:
- Professional;
- FAAC;
- Doorhan;
- Nice;
- Came.
У компаний FAAC, Nice и Came есть одна особенность: в приёмник можно прописать только один пульт, а от него надо скопировать необходимое количество разных брелоков. Если попытаться внести ещё одно устройство, то первое и все подключённые к нему приборы перестанут работать. В случае потери старого пульта он удаляется автоматически при записи нового. Главное достоинство устройств этих компаний — отсутствие необходимости открывать крышку электропривода при настройке.
У каждого пульта свои особенности программированияНо такие пульты очень уязвимы — вору достаточно подержать его в руках десять секунд для того, чтобы раздать сигнал на свой прибор.
Сотрудники могут передавать друг другу устройства для копирования, их появится больше, чем было выдано. Если был ограничен доступ на стоянку автомобилей, то в таком случае мест будет не хватать из-за лёгкости доступа к приборам.
Фирмы Doorhan и Professional выпускают системы, в которых в один приёмник можно прошить каждый пульт индивидуально. Среди недостатков выделяют необходимость каждый раз перед программированием открывать крышку привода, а также ограничение по количеству подключаемых пультов — до 128 штук. Устройство не позволяет клонировать приборы.
Программирование прибора Professional
Чтобы запрограммировать пульт от шлагбаума и ворот компании Professional, необходимо на блоке управления приёмником нажать кнопку «Learn» и подержать её в течение одной секунды. После этого загорится светодиод с соответствующей надписью. Теперь нужно на брелоке нажать такую же кнопку и дождаться, пока на блоке привода замигает и погаснет светодиод. Это будет означать то, что устройство сохранено в памяти приёмника.
В этом видео вы узнаете, как программировать пульт:
Для подключения дополнительных пультов операцию повторяют. Память у приёмника ограниченная: модели могут запоминать от 25 до 128 устройств. Если необходимо удалить все данные, то кнопку зажимают на восемь секунд. После того как она погаснет, все устройства будут удалены. Затем можно заниматься перепрограммированием привода.
Компания Came
Программирование пульта Came происходит по подобной схеме. Сначала нужно нажать и держать кнопку Prog на приёмнике. Как только начнёт мигать светодиод, второй рукой нужно нажать соответствующий выступ на брелоке. Если диод загорается ровным светом, то обе кнопки нужно отпустить. Пульт будет записан в привод.
Записать второй брелок по этой же инструкции не получится, так как таким образом можно только перекодировать приёмник. То есть, из памяти сотрётся первый прибор, а новый запишется на его место. Вместо этого, необходимо провести процедуру по копированию. На новом устройстве нужно нажать и задержать обе кнопки, начнёт мигать светодиод. Затем их отпускают и нажимают ту, которая позволяет запрограммировать приёмник, лампочка должна гореть ровно.
Через десять секунд к брелоку подносят первый пульт, который уже был подключён к приводу. Его располагают сзади подключаемого прибора, нажимают на нём рабочую кнопку. Диод должен мигнуть три раза и потухнуть. Так проходит программирование брелока Came.
Изделие фирмы FAAC
В приёмнике для того, чтобы настроить пульт компании FAAC, нужно нажать одновременно две кнопки P1 и P 2. Их отпускают в момент, когда на брелоке замигает светодиод. Затем нужно зажать кнопку на плате привода до тех пор, пока не замигает индикатор. Пока горит диод, необходимо на пульте управления надавить кнопку, которая должна быть запрограммирована на створки ворот. Код сохраняется примерно в течение двух секунд, после этого можно отпускать все кнопки.
Перепрограммировать пульт от ворот нужно по-другому, так как повторение прошлой инструкции сотрёт первый брелок и запишет новый. Для записи нескольких пультов нужно придерживаться определённого алгоритма:
- на записанном в привод брелоке зажимают кнопки P1 и P 2, дожидаются мигания индикатора;
- новый прибор располагают напротив первого;
- на уже запрограммированном приборе зажимают кнопку, с которой будет переписан сигнал;
- нужно дождаться двойного мигания пультового светодиода.
Так можно записать неограниченное количество брелоков с одинаковым кодом.
Брелок Nice
Запрограммировать китайский пульт для ворот Nice необходимо с помощью двух переключателей на самом брелоке и радиоканале. На приёмнике без задержки нажимают клавишу, на брелоке кнопку нужно подержать 4 секунды и дождаться тройного мигания индикатора. Так прибор запишется, и пока он будет находиться в режиме программирования, можно записать ещё несколько.
После истечения десяти секунд приёмник запомнит все брелоки и кнопки на них. Можно запрограммировать пульт дистанционно. Для этого нужно нажать клавишу на новом брелоке, задержать на пять секунд и отпустить. На уже записанном клавишу зажимают трижды, затем один раз — на втором приборе. Для удаления его из памяти приёмника необходимо надавить на клавишу, подождать сигналов светодиода. Индикатор должен загореться один раз, погаснуть и замигать три раза. Затем наступает небольшая пауза, и лампочка промигает пять раз.
Пульты для программирования ворот разные, отличаются они и процедурой подключения. Записывать, перекодировать и удалять брелоки нужно соответственно инструкциям каждого производителя.
Как правильно запрограммировать пульт от ворот: инструкция
Пульт от ворот – удобное приспособление, которое позволяет управлять работой ворот на расстоянии. Въезжая во двор, не нужно покидать салон машины и самому открывать створки. Достаточно кликнуть на определенной клавише и путь открыт. Действие пульта корректируется программированием кнопок на конкретную задачу, функцию.
Читайте также: Как сделать декоративный заборчик для клумбы
Описать все возможные способы программирования невозможно. В каждом приборе работает свой алгоритм. Но освоить самостоятельное программирование на распространенных приборах вам все же удастся.
Принципы работы с приемником сигнала
На большинство приемников можно зарегистрировать только один пульт. По этому принципу работают системы Came, FAAC, Nice. Попытка закодировать второй пульт обернется тем, что первый пульт станет бесполезным, прекратит откликаться на команды.
Но в этом есть и несомненный плюс. Если старый пульт потерян, не нужно стирать его из памяти приемника. Как только вы запишете команды на другой прибор, первый сотрется сам. Также не нужно каждый раз открывать крышку электропривода, если необходимо зафиксировать очередной пульт. Однако неприятно удивляет уязвимость систем – если знающий человек подержит пульт в руках 10 секунд, за это время ему удастся своровать сигнал.
Исключить или минимизировать процент воровства и распространения сигнала пульта, открывающего ворота, можно, установив приемник более профессионального уровня. Наименование фирмы GANT, модель Professional. Можно приобрести систему Doorhan отечественного производства. Минусами этих систем специалисты называют:
- ограниченное число записываемых приборов в приемник – от 25 до 128 штук;
- необходимость открывания крышки при программировании каждой единицы.
Зато вы будете уверены, что размножить сигнал втихаря от вас никто не сможет. Такой агрегат подойдет для крупных предприятий и паркингов, где оставляют много машин. По поводу стоимости – системы Professional и Doorhan выигрывают и здесь. Они в 2, а то и 3 раза дешевле итальянских аналогов.
Пошаговое программирование Professional
Перед вами пульт системы Professional. Как своими руками запрограммировать пульт от ворот, делятся пошаговым руководством эксперты:
- Найдите на поверхности приспособления клавишу LEARN.
- Удерживайте ее в течение 1 секунды, пока не загорится светодиод LEARN.
- Нажмите на клавишу, расположенную на брелоке, и тогда лампочка замигает и погаснет.
- Сигнал записан и сохранен.
Если нужно сопоставить действие приемника и еще одного пульта, повторите процедуру заново. Учитывайте ограниченное количество возможной записи. Если необходимо стереть брелоки, повторите такие шаги:
- Нажмите клавишу LEARN.
- Не отпускайте кнопку на протяжении 8 секунд.
Кодирование пульта от ворот Came
Программирование изделия от ворот фирмы Came предполагает следующую последовательность манипуляций:
- Нажмите клавишу PROG.
- Индикатор должен начать мигать.
- Кликните по нужно клавише на брелоке.
- Появится ровный свет, который указывает на успешное программирование блока управления.
- Уберите пальцы от кнопок. Сигнал записан.
Если необходимо записать еще один прибор, сделать это можно. Но предыдущий сотрется по умолчанию. Поэтому учимся копировать сигнал:
- Кликните и удерживайте клавиши на новом приборе, которые следует закодировать.
- Когда индикатор начнет мигать, отпустите кнопки и нажмите ту, которую хотите запрограммировать.
- Индикатор будет излучать ровный свет.
- Через 10 секунд поднесите уже запрограммированное изделие внизу и позади программируемого сейчас. Нажмите рабочую клавишу.
- Светодиод мигнет 3 раза и потухнет.
Читайте также: Как сделать фундамент под забор из профнастила
Эта операция настраивает систему Came на функционал с любым числом брелоков и одинаковым сигналом.
Как закодировать систему Doorhan
Чтобы начать процесс программирования, сотрите память приемника. Как это сделать?
- Когда включится питание, удерживайте клавишу записи брелоков нажатой в течение 10 секунд.
- Светодиод мигает на протяжении 1-3 секунд. Затем он потухнет на пару секунд и опять начнет мигать. Это означает стирание ранее записанных кодов пультов.
Записать прибор в приемник можно, проделав манипуляции:
- Удерживайте клавишу кодирования на плате радиоприемника 3 секунды. Должен загореться индикатор LED1.
- Нажмите необходимую клавишу и держите пару секунд.
- Чтобы записать несколько изделий, повторите эту же процедуру.
Программирование пульта от ворот FAAC
Чтобы записать приспособление в приемник, нажмите сразу 2 клавиши – Р1 и Р2 на ПУ. Отпустить их следует, когда индикатор замигает. Удерживайте клавишу на плате приемника, пока светодиод не замигает. За это время ваша задача нажать на пульте от ворот клавишу, программируемую в системе. Индикатор должен гореть 2-3 секунды. Это определяет сохранение кодировки. Далее отпустите кнопку пульта и приемника.
Читайте также: Как делается живая изгородь из ивы своими руками
Чтобы закодировать еще одно приспособление, осуществите кодирование:
- На главном пульте найдите и удерживайте сразу 2 клавиши Р1 и Р2.
- Уберите руку, когда светодиод начнет мигать. Это произойдет через 2 секунды.
- Разместите новый прибор позади уже действующего, удерживайте кнопку переписи сигнала.
- Если светодиод дважды мигнул, это свидетельствует о том, что код сохранен.
Сделать копию пульта для шлагбаума
Инструкция «как сделать копию пульта для шлагбаума».
В этой статье мы расскажем и покажем как можно самому сделать копию пульта, имея на руках оригинал.
Существует масса различных пультов которые называют «копировщик, сканер, дубликатор», как правило они предназначены для копирования кода пульта. Отличаются они своим внешним видом, рабочей частотой, а так же списком поддерживаемых пультов. Бывает так, что один дубликатор умеет копировать динамический код, а другой не копирует, но выглядит абсолютно так же. Все дело в «начинке» пульта — копировщика, ведь именно в микросхеме пульта зашиты коды пультов (мануфактурники). Чем больше зашито кодов, тем больше пультов можно скопировать.
Но есть пульты, которые работают не на привычных для сканера частотах 433,92 МГц или 868 МГц. Скопировать их уже не получится, к таким брелкам относятся так называемые «умные пульты» например: PAL-ES. В последнее время, появляется все больше компаний, особенно российских, которые выпускают свои серии пультов с радиоприёмниками, которые работают по другим алгоритмам, создающие хорошую защиту от копирования.
Кому интересно взламывать коды пультов? Разумеется, тем, кто производит аналоги пультов, для последующей продажи. Обычно декодируют коды популярных моделей пультов. Такие, которые продаются во многих странах.
Варианты копирования пультов.
Рассмотрим вариант копирования пульта с помощью самого простого пульта — дубликатора (Apollo, D1, Joy, Deff DP-1 и их аналоги). Как правило такие дубликаторы могут копировать любой фиксированный код на частоте 433,92МГц и частично динамический.
Для копирования пультов с динамическим кодом, необходимо воспользоваться Смарт дубликатором SDBL-7.
Представим ситуацию, у вас в гараже установлен потолочный привод CAME серии VER-900. Открываете и закрываете ворота вы с помощью оригинального пульта Came TOP 432 NA, работающего на частоте 433Мгц. Со временем, резиновые кнопки данного брелка трескаются и приходят в негодность. Пользоваться таким пультом крайне неудобно. Как же быть в этой ситуации?
Все очень просто! Вам необходимо приобрести пульт-дубликатор, который позволит вам сделать копию вашего «умирающего» пульта. Процедура копирования достаточно проста, с которой может справиться любой человек, без каких либо технических знаний.
Итак, рассмотрим инструкцию поэтапно.
1) Для начала нам нужно ввести пульт в режим программирования.
Для этого необходимо на пульте дубликаторе одновременно зажать кнопки А и В на 3 секунды. Как только светодиод начнет медленно моргать, — одновременно отпускаем кнопки A и B.
2) Теперь наш пульт Duplicator находится в режиме программирования, можно приступать к копированию.
3) Копирование пульта.
Теперь самый сложный шаг, на котором чаще всего совершается главная ошибка. Об этом расскажем подробнее, как её не допустить.
Самым верным способом копирования является — «спиной к спине», в таком положении код считывается максимально четко. В интернете полно видео инструкций по программированию, где пытаются на расстоянии скопировать пульт. Так делать настоятельно не рекомендуем.
Итак, оригинальный пульт лучше перевернуть так, чтобы кнопки смотрели вниз, а пульт — дубликатор положить спиной на него, кнопками вверх. В таком положении вы будете видеть как происходит копирование. Одновременно нажимаете на кнопку «рабочую» оригинального пульта и кнопку (например А) пульта дубликатора. Наблюдайте за индикацией светодиода. Как только пульт дубликатор увидит код оригинального CAME Top 432 NA, он начнет быстро моргать. Необходимо подождать 2 секунды пока светодиод будет быстро мигать, затем отпустить обе кнопки.
Для записи остальных кнопок (BCD) повторяем процедуру копирования, аналогичную кнопки А, только без ввода в режим программирования.
Обращаем внимание что ввод пульта в «режим программирования» делается всего один раз.
Если по какой то причине после программирования пульт не открывает, повторите процесс копирования с 1 пункта. Такое иногда случается, когда код передался не правильно.
4) Возврат на заводские настройки.
Для возврата на заводские настройки, необходимо одновременно зажать кнопки А и С. Эта функция может пригодится в том случае, если вы ставите универсальный приемник, на который необходимо записать этот пульт. Но после ввода пульта в режим программирования, кнопки становятся не активными, на них стирается какой либо код. Возврат на заводские настройки восстановит заводской код на каждой из 4х кнопок.
Видео инструкция как копировать пульт CAME Top 432NA с помощью пульта-дубликатора (DP-1).
Видео инструкция как копировать пульт An Motors AT-4 (Алютех) с помощью пульта SDBL-7.
Видео инструкция как копировать пульт Doorhan (Дальняя идентификация R3V3) с помощью пульта SDBL-7.
Какие пульты можно скопировать универсальным пультом дубликатором SDBL-7?
Чтобы скопировать динамический код пульта, необходимо воспользоваться Смарт дубликатором SDBL-7, который автоматически распознает тип кода и выполнит копирование оригинального пульта при определенных условиях!
Способ №2 для ввода пульта — дубликатора в режим копирования.
Существуют несколько способов, точнее комбинаций кнопок, для того чтобы ввести пульт сканер в режим программирования. Один, самый популярный рассмотрели выше. Второй способ, не менее популярный, это когда зажимаются одновременно две верхние кнопки на 3 секунды, после отжимается только вторая кнопка и она же нажимается еще три раза, затем обе кнопки можно отпускать. Ниже приведен пример такого способа копирования.
Руководство по APIKeychain Services для паролей в Swift
Одним из наиболее важных элементов безопасности для разработчиков Apple является связка ключей iOS , специализированная база данных для хранения метаданных и конфиденциальной информации. Использование Keychain — лучший способ хранить небольшие фрагменты данных, которые важны для вашего приложения, например секреты и пароли.
Непосредственно взаимодействовать с Keychain сложно, особенно в Swift. Вы должны использовать фреймворк Security , который в основном написан на C.
Существуют различные оболочки Swift, которые позволяют взаимодействовать с Keychain . Apple даже предлагает один под названием GenericKeychain, чтобы упростить вашу жизнь.
Хотя вы можете легко использовать сторонние оболочки для взаимодействия с недружественным API, предоставляемым Apple, понимание Keychain Services добавляет ценный инструмент в ваш набор инструментов разработчика.
В этом руководстве вы углубитесь в Keychain Services API и узнаете, как создать свою собственную оболочку, разработав ее как платформу iOS.
В частности, вы узнаете, как добавлять, изменять, удалять и искать общие пароли и пароли в Интернете. Кроме того, вы предоставите модульные тесты, чтобы убедиться, что ваш код работает так, как вы ожидаете.
Начало работы
В этом руководстве вы будете использовать SecureStore , стандартную платформу iOS, в которой вы реализуете свой Keychain Services API .
Начните с загрузки начального проекта с помощью кнопки Загрузить материалы вверху или внизу этого руководства.После загрузки откройте SecureStore.xcodeproj в Xcode.
Чтобы вы не отвлекались, в стартовом проекте есть все, что связано с реализацией вашей оболочки, уже настроенной для вас.
Структура вашего проекта должна выглядеть так:
Код вашей оболочки находится в папке группы SecureStore :
- SecureStoreError.swift : содержит
перечисление
, которое представляет все возможные ошибки, с которыми может справиться ваша оболочка.СоответствиеLocalizedError
,SecureStoreError
предоставляет локализованные сообщения, описывающие ошибку и причину ее возникновения. - SecureStoreQueryable.swift : определяет протокол с тем же именем, что и файл.
SecureStoreQueryable
вынуждает разработчика предоставить свойствозапроса
, определенное как словарь с типом[String: Any]
. Внутренне ваш API имеет дело только с этими типами объектов. Подробнее об этом позже. - SecureStore.swift : определяет оболочку, которую вы реализуете в этом руководстве. Он предоставляет инициализатор и набор зарезервированных методов для добавления, обновления, удаления и получения ваших паролей из Keychain . Потребитель может создать экземпляр оболочки, введя некоторый тип, соответствующий
SecureStoreQueryable
. - InternetProtocol.swift : представляет все возможные значения интернет-протокола, с которыми вы можете иметь дело.
- InternetAuthenticationType.swift : описывает механизмы аутентификации, которые предоставляет ваша оболочка.
Примечание : Внедрение зависимостей позволяет писать классы, которые расширяют и изолируют функциональность. Это немного пугающее слово для довольно простой концепции. В этом руководстве вы встретите слово «внедрить», которое относится к передаче всего объекта в инициализатор.
Наряду с кодом фреймворка у вас должны быть две другие папки: SecureStoreTests и TestHost .Первый содержит модульные тесты, которые вы поставляете вместе со своим фреймворком. Последний содержит пустое приложение, которое вы будете использовать для тестирования API фреймворка.
Примечание : Обычно для тестирования кода, который вы пишете в учебнике, вы запускаете приложение в симуляторе. Вместо этого вы убедитесь, что ваш код работает, запустив модульные тесты. Таким образом, тестовое хост-приложение в проекте не будет работать в симуляторе; вместо этого он служит контейнером, в котором выполняет модульные тесты для вашей платформы.
Прежде чем углубляться непосредственно в код, ознакомьтесь с некоторой теорией!
Обзор служб связки ключей
Зачем использовать Keychain вместо более простых решений? Разве недостаточно хранить пароль пользователя в кодировке Base-64 в UserDefaults
?
Определенно нет! Для злоумышленника нетрудно восстановить пароль, сохраненный таким образом.
Службы связки ключей помогут вам безопасно хранить элементы или небольшие фрагменты данных в зашифрованной базе данных от имени пользователя.
Из документации Apple, класс SecKeychain
представляет базу данных, а класс SecKeychainItem
представляет элемент.
Службы связки ключей работают по-разному в зависимости от используемой вами операционной системы.
В iOS приложения имеют доступ к одной цепочке ключей , которая включает Связку ключей iCloud .Блокировка и разблокировка устройства автоматически блокирует и разблокирует Брелок . Это предотвращает нежелательный доступ. Кроме того, приложение может получить доступ только к своим собственным элементам или элементам, совместно используемым с группой, к которой оно принадлежит.
С другой стороны, macOS поддерживает несколько цепочек ключей. Обычно вы полагаетесь на пользователя для управления ими с помощью приложения Keychain Access и неявно работаете с цепочкой ключей по умолчанию. Кроме того, вы можете напрямую управлять связками ключей; например, создание и управление связкой ключей, которая является строго частной для вашего приложения.
Если вы хотите сохранить секрет, например пароль, вы упаковываете его как элемент связки ключей. Это непрозрачный тип, который состоит из двух частей: данных и набора атрибутов. Непосредственно перед тем, как вставить новый элемент, Keychain Services шифрует данные, а затем упаковывает их вместе со своими атрибутами.
Используйте атрибуты для идентификации и хранения метаданных или для управления доступом к вашим сохраненным элементам. Укажите атрибуты как ключи и значения словаря, выраженного как CFDictionary
.Список доступных ключей можно найти в разделе «Ключи и значения атрибутов элемента». Соответствующие значения могут быть строками, числами, некоторыми другими базовыми типами или константами, упакованными в среду безопасности.
Службы связки ключей предоставляют особые виды атрибутов, которые позволяют идентифицировать класс для определенного элемента. В этом руководстве вы будете использовать kSecClassGenericPassword
и kSecClassInternetPassword
для работы с обычными паролями и паролями в Интернете.
Каждый класс поддерживает только специальный набор атрибутов. Другими словами, не все атрибуты применимы к определенному классу элементов. Вы можете проверить их в соответствующей документации по стоимости класса номенклатуры.
Примечание : Помимо манипулирования паролями, Apple предлагает возможность взаимодействовать с другими типами элементов, такими как сертификаты, криптографические ключи и идентификационные данные. Они представлены соответственно классами kSecClassCertificate
, kSecClassKey
и kSecClassIdentity
.Погружение в API служб связки ключей
Поскольку код скрывает элементы от злонамеренных пользователей, Keychain Services предоставляет набор функций C для взаимодействия. Вот API, которые вы будете использовать для управления как обычными паролями, так и паролями в Интернете:
- SecItemAdd (_: _ 🙂 : используйте эту функцию, чтобы добавить один или несколько элементов в связку ключей.
- SecItemCopyMatching (_: _ 🙂 : эта функция возвращает один или несколько элементов связки ключей, соответствующих поисковому запросу.Кроме того, он может копировать атрибуты определенных элементов связки ключей.
- SecItemUpdate (_: _ 🙂 : Эта функция позволяет изменять элементы, соответствующие поисковому запросу.
- SecItemDelete (_ 🙂 : эта функция удаляет элементы, соответствующие поисковому запросу.
Хотя вышеперечисленные функции работают с разными параметрами, все они возвращают код результата, выраженный как OSStatus
. Это 32-битное целое число со знаком, которое может принимать одно из значений, перечисленных в Ключах результата возврата элемента.
Поскольку OSStatus
может быть непонятным, Apple предоставляет дополнительный API под названием SecCopyErrorMessageString (_: _ :)
для получения удобочитаемой строки, соответствующей этим кодам состояния.
Теперь, когда вы хорошо знакомы с Keychain Services , в следующем разделе вы узнаете, как удалить заглушенные методы, предоставляемые вашей оболочкой.
Реализация Wrapper API
Откройте SecureStore.swift и добавьте следующую реализацию в setValue (_: for :)
:
// 1
guard let encodedPassword = value.data (используя: .utf8) else {
выбросить SecureStoreError.string2DataConversionError
}
// 2
var query = secureStoreQueryable.запрос
запрос [String (kSecAttrAccount)] = userAccount
// 3
var status = SecItemCopyMatching (запрос как CFDictionary, nil)
switch status {
// 4
case errSecSuccess:
var attributesToUpdate: [String: Any] = [:]
attributeToUpdate [String (kSecValueData)] = encodedPassword
status = SecItemUpdate (запрос как CFDictionary,
attributeToUpdate как CFDictionary)
if status! = errSecSuccess {
выбросить ошибку (от: статус)
}
// 5
case errSecItemNotFound:
запрос [String (kSecValueData)] = encodedPassword
status = SecItemAdd (запрос как CFDictionary, ноль)
if status! = errSecSuccess {
выбросить ошибку (от: статус)
}
дефолт:
выбросить ошибку (от: статус)
}
Этот метод, как следует из названия, позволяет сохранить новый пароль для конкретной учетной записи.Если он не может обновить или добавить пароль, он выдает SecureStoreError.unhandledError
, в котором указывается локализованное описание для него.
Вот что делает ваш код:
- Проверьте, может ли он закодировать значение для сохранения в тип
Data
. Если это невозможно, возникает ошибка преобразования. - Попросите экземпляр
secureStoreQueryable
выполнить запрос и добавить учетную запись, которую вы ищете. - Вернуть элемент цепочки для ключей, соответствующий запросу.
- Если запрос завершился успешно, это означает, что пароль для этой учетной записи уже существует. В этом случае вы замените существующее значение пароля с помощью
SecItemUpdate (_: _ :)
. - Если не удается найти элемент, значит пароль для этой учетной записи еще не существует. Вы добавляете элемент, вызывая
SecItemAdd (_: _ :)
.
API Keychain Services использует типы Core Foundation. Чтобы компилятор был доволен, вы должны преобразовать типы Core Foundation в типы Swift и наоборот.
В первом случае, поскольку атрибут каждого ключа имеет тип CFString
, его использование в качестве ключа в словаре запроса требует преобразования в String
. Однако преобразование из [String: Any]
в CFDictionary
позволяет вам вызывать функции C.
Пришло время восстановить пароль. Прокрутите вниз только что реализованный метод и замените реализацию getValue (for :)
на следующую:
// 1
var query = secureStoreQueryable.запрос
запрос [String (kSecMatchLimit)] = kSecMatchLimitOne
запрос [String (kSecReturnAttributes)] = kCFBooleanTrue
запрос [String (kSecReturnData)] = kCFBooleanTrue
запрос [String (kSecAttrAccount)] = userAccount
// 2
var queryResult: AnyObject?
let status = withUnsafeMutablePointer (to: & queryResult) {
SecItemCopyMatching (запрос как CFDictionary, $ 0)
}
switch status {
// 3
case errSecSuccess:
охранять
пусть queriedItem = queryResult как? [String: Any],
пусть passwordData = queriedItem [String (kSecValueData)] как? Данные,
let password = String (data: passwordData, кодировка:.utf8)
else {
выбросить SecureStoreError.data2StringConversionError
}
вернуть пароль
// 4
case errSecItemNotFound:
вернуть ноль
дефолт:
выбросить ошибку (от: статус)
}
Для конкретной учетной записи этот метод извлекает связанный с ней пароль. Опять же, если с запросом что-то пойдет не так, код выдаст SecureStoreError.unhandledError
.
Вот что происходит с только что добавленным кодом:
- Спросите
secureStoreQueryable
для выполнения запроса.Помимо добавления интересующей вас учетной записи, это обогащает запрос другими атрибутами и связанными с ними значениями. В частности, вы просите его вернуть один результат, вернуть все атрибуты, связанные с этим конкретным элементом, и в результате вернуть вам незашифрованные данные. - Используйте
SecItemCopyMatching (_: _ :)
для выполнения поиска. По завершенииqueryResult
будет содержать ссылку на найденный элемент, если он доступен.withUnsafeMutablePointer (to: _ :)
дает вам доступ к UnsafeMutablePointer, который вы можете использовать и изменять внутри замыкания для сохранения результата.
- Если запрос завершился успешно, это означает, что он нашел элемент. Поскольку результат представлен словарем, который содержит все запрашиваемые вами атрибуты, вам необходимо сначала извлечь данные, а затем декодировать их в тип
Data
. - Если элемент не найден, вернуть значение
nil
.
Недостаточно добавить или получить пароли для учетной записи. Вам также необходимо интегрировать способ удаления паролей.
Найдите removeValue (для :)
и добавьте эту реализацию:
var query = secureStoreQueryable.запрос
запрос [String (kSecAttrAccount)] = userAccount
let status = SecItemDelete (запрос как CFDictionary)
статус охраны == errSecSuccess || status == errSecItemNotFound else {
выбросить ошибку (от: статус)
}
Чтобы удалить пароль, выполните SecItemDelete (_ :)
, указав учетную запись, которую вы ищете. Если вы успешно удалили пароль или элемент не был найден, ваша работа сделана, и вы спасетесь. В противном случае вы выдаете необработанную ошибку, чтобы пользователь знал, что что-то пошло не так.
Но что, если вы хотите удалить все пароли, связанные с определенной службой? Ваш следующий шаг - реализовать окончательный код для достижения этой цели.
Найдите removeAllValues ()
и добавьте в скобки следующий код:
пусть запрос = secureStoreQueryable.query
let status = SecItemDelete (запрос как CFDictionary)
статус охраны == errSecSuccess || status == errSecItemNotFound else {
выбросить ошибку (от: статус)
}
Как вы заметите, этот метод похож на предыдущий, за исключением запроса, переданного в функцию SecItemDelete (_ :)
.В этом случае вы удаляете пароли независимо от учетной записи пользователя.
Наконец, создайте фреймворк, чтобы убедиться, что все компилируется правильно.
Соединяя точки
Вся проделанная вами работа обогащает вашу оболочку возможностями добавления, обновления, удаления и извлечения. Как есть, вы должны создать оболочку с экземпляром некоторого типа, который соответствует SecureStoreQueryable
.
Поскольку вашей самой первой целью было иметь дело как с общими паролями, так и с паролями в Интернете, следующим шагом будет создание двух различных конфигураций, которые потребитель может создать и внедрить в вашу оболочку.
Во-первых, изучите, как составить запрос на общие пароли.
Откройте SecureStoreQueryable.swift и добавьте следующий код под определением SecureStoreQueryable
:
public struct GenericPasswordQueryable {
let service: String
позволить accessGroup: String?
init (service: String, accessGroup: String? = nil) {
self.service = service
self.accessGroup = accessGroup
}
}
GenericPasswordQueryable
- это простая структура
, которая принимает службу и группу доступа как параметры String
.
Затем добавьте следующее расширение под определением GenericPasswordQueryable
:
extension GenericPasswordQueryable: SecureStoreQueryable {
public var query: [String: Any] {
var query: [String: Any] = [:]
запрос [String (kSecClass)] = kSecClassGenericPassword
запрос [String (kSecAttrService)] = служба
// Группа доступа, если целевая среда не симулятор
#if! targetEnvironment (симулятор)
если разрешить accessGroup = accessGroup {
запрос [String (kSecAttrAccessGroup)] = accessGroup
}
#endif
ответ на запрос
}
}
Чтобы соответствовать протоколу SecureStoreQueryable
, необходимо реализовать запрос
как свойство.Запрос представляет способ, которым ваша оболочка может выполнять выбранную функцию.
Составленный запрос имеет определенные ключи и значения:
- Класс элемента, представленный ключом
kSecClass
, имеет значениеkSecClassGenericPassword
, поскольку вы имеете дело с универсальными паролями. Таким образом связка ключей определяет, что данные являются секретными и требуют шифрования. -
kSecAttrService
устанавливается равным значению параметраservice
, которое вводится с новым экземпляромGenericPasswordQueryable
. - Наконец, если ваш код не запущен на симуляторе, вы также установите для ключа
kSecAttrAccessGroup
предоставленное значениеaccessGroup
. Это позволяет вам обмениваться элементами между разными приложениями с одной и той же группой доступа.
Затем создайте платформу, чтобы убедиться, что все работает правильно.
Примечание : для элемента связки ключей класса kSecClassGenericPassword
первичный ключ представляет собой комбинацию kSecAttrAccount
и kSecAttrService
.Другими словами, кортеж позволяет вам однозначно идентифицировать общий пароль в цепочке ключей .
Ваша новая блестящая обертка еще не готова! Следующим шагом является интеграция функций, позволяющих потребителям также взаимодействовать с паролями в Интернете.
Прокрутите до конца SecureStoreQueryable.swift и добавьте следующее:
public struct InternetPasswordQueryable {
пусть сервер: Строка
пусть порт: Int
let path: String
пусть securityDomain: String
пусть internetProtocol: InternetProtocol
пусть internetAuthenticationType: InternetAuthenticationType
}
InternetPasswordQueryable
- это структура
, которая помогает вам управлять Интернет-паролями в ваших приложениях Связка ключей .
Перед тем, как соответствовать SecureStoreQueryable
, найдите время, чтобы понять, как ваш API будет работать в этом случае.
Если пользователи хотят иметь дело с паролями в Интернете, они создают новый экземпляр InternetPasswordQueryable
, где свойства internetProtocol
и internetAuthenticationType
привязаны к определенным доменам.
Затем добавьте следующее ниже своей реализации InternetPasswordQueryable
:
extension InternetPasswordQueryable: SecureStoreQueryable {
public var query: [String: Any] {
var query: [String: Any] = [:]
запрос [String (kSecClass)] = kSecClassInternetPassword
запрос [String (kSecAttrPort)] = порт
запрос [String (kSecAttrServer)] = сервер
запрос [String (kSecAttrSecurityDomain)] = securityDomain
запрос [String (kSecAttrPath)] = путь
запрос [String (kSecAttrProtocol)] = internetProtocol.rawValue
запрос [String (kSecAttrAuthenticationType)] = internetAuthenticationType.rawValue
ответ на запрос
}
}
Как видно из случая общих паролей, запрос имеет определенные ключи и значения:
- Класс элемента, представленный ключом
kSecClass
, имеет значениеkSecClassInternetPassword
, поскольку теперь вы взаимодействуете с паролями в Интернете. -
kSecAttrPort
настроен на параметрпорт
. -
kSecAttrServer
настроен на параметрserver
. -
kSecAttrSecurityDomain
установлен в параметрsecurityDomain
. -
kSecAttrPath
устанавливается равным параметруpath
. -
kSecAttrProtocol
привязан кrawValue
параметраinternetProtocol
. - Наконец,
kSecAttrAuthenticationType
привязан кrawValue
параметраinternetAuthenticationType
.
Снова соберите, чтобы увидеть, правильно ли компилируется Xcode.
Примечание : Для элемента цепочки для ключей класса kSecClassInternetPassword
первичный ключ представляет собой комбинацию kSecAttrAccount
, kSecAttrSecurityDomain
, kSecAttrServer
, kSecAttrProtocolAttrServer
, kSecAttrProtocolAttrServer
, kSecAttrProtocolAttrServer
, kSecAttrProtocolAttrServer
, kSecAttrProtocol
, Другими словами, эти значения позволяют однозначно идентифицировать интернет-пароль в цепочке ключей .
Пришло время увидеть результат всей вашей тяжелой работы. Но ждать! Поскольку вы не создаете приложение, работающее на симуляторе, как вы собираетесь его проверить?
Вот где на помощь приходят модульные тесты.
Тестирование поведения
В этом разделе вы увидите, как интегрировать модульные тесты для вашей оболочки. В частности, вы протестируете функции, которые предоставляет ваша оболочка.
Создание класса
Чтобы создать класс, который будет содержать все ваши модульные тесты, щелкните File ▸ New ▸ File… и выберите iOS ▸ Source ▸ Unit Test Case Class .На следующем экране укажите имя класса SecureStoreTests , подкласс XCTestCase и убедитесь, что язык - Swift . Щелкните Next , выберите группу SecureStoreTests , убедитесь, что вы установили флажок SecureStoreTests target, и щелкните Create .
Xcode предложит диалоговое окно для создания заголовка моста Objective-C. Нажмите Не создавать , чтобы пропустить создание.
Откройте SecureStoreTests.swift и удалите весь код в фигурных скобках.
Затем добавьте следующее под оператором import XCTest
:
@testable импорт SecureStore
Это дает модульным тестам доступ к классам и методам, определенным в вашей структуре SecureStore.
Примечание : вы можете увидеть ошибку «Нет такого модуля». Не волнуйтесь, ошибка исчезнет, когда вы дойдете до конца этого раздела руководства и выполните тест.
Затем добавьте следующие свойства вверху SecureStoreTests
:
var secureStoreWithGenericPwd: SecureStore!
var secureStoreWithInternetPwd: SecureStore!
Затем добавьте новый метод setUp ()
, например:
override func setUp () {
super.setUp ()
пусть genericPwdQueryable =
GenericPasswordQueryable (служба: "someService")
secureStoreWithGenericPwd =
SecureStore (secureStoreQueryable: genericPwdQueryable)
пусть internetPwdQueryable =
InternetPasswordQueryable (сервер: "someServer",
порт: 8080,
путь: "somePath",
securityDomain: "someDomain",
протокол Интернета: .https,
internetAuthenticationType: .httpBasic)
secureStoreWithInternetPwd =
SecureStore (secureStoreQueryable: internetPwdQueryable)
}
Поскольку вы тестируете как общий, так и интернет-пароль, вы создаете два экземпляра оболочки с двумя разными конфигурациями. Эти конфигурации вы разработали в предыдущем разделе.
Прежде чем вы забудете, вам нужно очистить состояние связки ключей на этапе разрыва теста, чтобы вы могли начать все заново в следующий раз.Добавьте этот метод в конец класса:
override func tearDown () {
пытаться? secureStoreWithGenericPwd.removeAllValues ()
пытаться? secureStoreWithInternetPwd.removeAllValues ()
super.tearDown ()
}
Поскольку вы должны изолировать и выполнять каждый тест независимо от других, вы собираетесь удалить все пароли, уже имеющиеся в цепочке ключей . Порядок исполнения значения не имеет.
Пришло время добавить модульные тесты для общих паролей.
Проверка общих паролей
Добавьте следующий код под tearDown ()
:
// 1
func testSaveGenericPassword () {
делать {
попробуйте secureStoreWithGenericPwd.setValue ("pwd_1234", for: "genericPassword")
} catch (let e) {
XCTFail («Не удалось сохранить общий пароль с помощью \ (e.localizedDescription).»)
}
}
// 2
func testReadGenericPassword () {
делать {
попробуйте secureStoreWithGenericPwd.setValue ("pwd_1234", for: "genericPassword")
пусть пароль = попробуйте secureStoreWithGenericPwd.getValue (для: "genericPassword")
XCTAssertEqual ("pwd_1234", пароль)
} catch (let e) {
XCTFail («Не удалось прочитать общий пароль с \ (e.localizedDescription).»)
}
}
// 3
func testUpdateGenericPassword () {
делать {
попробуйте secureStoreWithGenericPwd.setValue ("pwd_1234", for: "genericPassword")
попробуйте secureStoreWithGenericPwd.setValue ("pwd_1235", for: "genericPassword")
let password = попробуйте secureStoreWithGenericPwd.getValue (для: "genericPassword")
XCTAssertEqual ("pwd_1235", пароль)
} catch (let e) {
XCTFail ("Не удалось обновить общий пароль: \ (e.localizedDescription). ")
}
}
// 4
func testRemoveGenericPassword () {
делать {
попробуйте secureStoreWithGenericPwd.setValue ("pwd_1234", for: "genericPassword")
попробуйте secureStoreWithGenericPwd.removeValue (для: "genericPassword")
XCTAssertNil (попробуйте secureStoreWithGenericPwd.getValue (для: "genericPassword"))
} catch (let e) {
XCTFail («Не удалось сохранить общий пароль с помощью \ (e.localizedDescription).»)
}
}
// 5
func testRemoveAllGenericPasswords () {
делать {
попробуйте secureStoreWithGenericPwd.setValue ("pwd_1234", для: "genericPassword")
попробуйте secureStoreWithGenericPwd.setValue ("pwd_1235", for: "genericPassword2")
попробуйте secureStoreWithGenericPwd.removeAllValues ()
XCTAssertNil (попробуйте secureStoreWithGenericPwd.getValue (для: "genericPassword"))
XCTAssertNil (попробуйте secureStoreWithGenericPwd.getValue (для: "genericPassword2"))
} catch (let e) {
XCTFail («Не удалось удалить общие пароли с помощью \ (e.localizedDescription).»)
}
}
Здесь довольно много чего происходит, поэтому разберем:
- Метод
testSaveGenericPassword ()
проверяет, может ли он правильно сохранить пароль. -
testReadGenericPassword ()
сначала сохраняет пароль, затем извлекает пароль, проверяя, совпадает ли он с ожидаемым. -
testUpdateGenericPassword ()
проверяет, сохраняя другой пароль для той же учетной записи, последний пароль - это тот, который ожидается после его получения. -
testRemoveGenericPassword ()
проверяет, может ли он удалить пароль для определенной учетной записи. - Наконец,
testRemoveAllGenericPasswords
проверяет, что все пароли, относящиеся к определенной службе, удалены из Keychain .
Поскольку ваша оболочка может генерировать исключения, каждый блок catch
приводит к сбою тестов, если что-то пойдет не так.
Проверка работы
Теперь пора убедиться, что все работает должным образом. Выберите TestHost в качестве активной схемы для вашего проекта Xcode:
Нажмите Command-U на клавиатуре (или выберите Продукт ▸ Тест в меню), чтобы выполнить модульные тесты.
Примечание : вам не нужно запускать приложение, как обычно в учебном пособии.В этом руководстве вы проверяете свой код, выполняя модульные тесты.
Показать навигатор тестов и дождаться выполнения тестов. Как только они закончатся, все пять тестов будут зелеными. Ницца!
Затем проделайте то же самое с паролями в Интернете.
Прокрутите до конца класса и прямо перед последней фигурной скобкой добавьте следующее:
func testSaveInternetPassword () {
делать {
попробуйте secureStoreWithInternetPwd.setValue ("pwd_1234", for: "internetPassword")
} catch (let e) {
XCTFail ("Не удалось сохранить интернет-пароль \ (e.localizedDescription). ")
}
}
func testReadInternetPassword () {
делать {
попробуйте secureStoreWithInternetPwd.setValue ("pwd_1234", for: "internetPassword")
let password = попробуйте secureStoreWithInternetPwd.getValue (для: "internetPassword")
XCTAssertEqual ("pwd_1234", пароль)
} catch (let e) {
XCTFail («Не удалось прочитать интернет-пароль с \ (e.localizedDescription).»)
}
}
func testUpdateInternetPassword () {
делать {
попробуйте secureStoreWithInternetPwd.setValue ("pwd_1234", для: "internetPassword")
попробуйте secureStoreWithInternetPwd.setValue ("pwd_1235", for: "internetPassword")
let password = попробуйте secureStoreWithInternetPwd.getValue (для: "internetPassword")
XCTAssertEqual ("pwd_1235", пароль)
} catch (let e) {
XCTFail («Не удалось обновить интернет-пароль с помощью \ (e.localizedDescription).»)
}
}
func testRemoveInternetPassword () {
делать {
попробуйте secureStoreWithInternetPwd.setValue ("pwd_1234", for: "internetPassword")
попробуйте secureStoreWithInternetPwd.removeValue (для: "internetPassword")
XCTAssertNil (попробуйте secureStoreWithInternetPwd.getValue (для: "internetPassword"))
} catch (let e) {
XCTFail («Не удалось удалить интернет-пароль с помощью \ (e.localizedDescription).»)
}
}
func testRemoveAllInternetPasswords () {
делать {
попробуйте secureStoreWithInternetPwd.setValue ("pwd_1234", for: "internetPassword")
попробуйте secureStoreWithInternetPwd.setValue ("pwd_1235", for: "internetPassword2")
попробуйте secureStoreWithInternetPwd.removeAllValues ()
XCTAssertNil (попробуйте secureStoreWithInternetPwd.getValue (для: "internetPassword"))
XCTAssertNil (попробуйте secureStoreWithInternetPwd.getValue (для: "internetPassword2"))
} catch (let e) {
XCTFail («Не удалось удалить интернет-пароли с помощью \ (e.localizedDescription).»)
}
}
Обратите внимание, что приведенный выше код идентичен ранее проанализированному. Вы только что заменили ссылочный номер secureStoreWithGenericPwd
на secureStoreWithInternetPwd
.
Выберите TestHost в качестве активной схемы, если это еще не сделано, и нажмите Command-U на клавиатуре для повторного тестирования. Теперь все тесты, как для общих паролей, так и для интернет-паролей, должны быть зелеными.
Поздравляем! Теперь у вас есть рабочий автономный фреймворк и модульные тесты.
Куда идти дальше?
В этом руководстве вы создали фреймворк, включающий Keychain Services API и даже интегрированные модульные тесты, чтобы доказать, что ваш код работает должным образом.Удивительный!
Вы можете пойти дальше и поделиться своим кодом с другими людьми, выполнив заключительную часть нашего руководства «Создание платформы для iOS».
Вы можете загрузить законченную версию проекта, используя кнопку Загрузить материалы вверху или внизу этого руководства.
Если вы хотите узнать больше, ознакомьтесь с документацией Apple на сайте Keychain Services.
Стоит отметить, что Keychain не ограничивается паролями.Вы можете хранить конфиденциальную информацию, такую как данные кредитной карты или короткие заметки. Вы также можете сохранять такие элементы, как криптографические ключи и сертификаты, которыми вы управляете с помощью служб сертификатов, ключей и доверия, чтобы проводить безопасные и проверенные транзакции с данными.
Что вы узнали из этого? Остались вопросы? Хотите поделиться тем, что произошло в процессе? Вы можете обсудить это на форумах. Увидимся там!
raywenderlich.com Еженедельно
Райвендерлих.com - это самый простой способ быть в курсе всего, что вам нужно знать как мобильному разработчику.
Получайте еженедельный дайджест наших руководств и курсов, а в качестве бонуса получите бесплатный углубленный курс по электронной почте!
.Базовая безопасность iOS: связка ключей и хеширование
Примечание об обновлении: Это руководство было обновлено для Xcode 9.2, Swift 4, iOS 11 и iPhone X Райаном Акерманом. Первоначальное руководство было написано Крисом Лоу.
Один из наиболее важных аспектов разработки программного обеспечения также считается одним из самых загадочных и пугающих (и поэтому его избегают, как чумы): безопасность приложений. Пользователи ожидают, что их приложения будут работать правильно, сохранять конфиденциальность информации и защищать ее от потенциальных угроз.
В этом руководстве вы погрузитесь в основы безопасности iOS. Вы будете работать с некоторыми базовыми методами криптографического хеширования, чтобы безопасно хранить вводимые пользователем данные в связке ключей iOS, обеспечивая конфиденциальность и защиту данных ваших пользователей.
У Apple есть несколько API-интерфейсов, которые помогут защитить ваши приложения, и вы изучите их при работе с связкой ключей. Кроме того, вы будете использовать CryptoSwift - хорошо изученную библиотеку с открытым исходным кодом, реализующую криптографические алгоритмы.
Начало работы
Используйте кнопку Загрузить материалы вверху или внизу этого руководства, чтобы загрузить начальный проект.
Пример приложения позволяет пользователям входить в систему и просматривать фотографии своих друзей. Большая часть приложения уже подключена для вас; ваша работа - защитить приложение.
После распаковки материалов для загрузки обязательно откройте Friendvatars.xcworkspace , чтобы правильно включить все зависимости CocoaPod. Выполните сборку и запустите, чтобы увидеть, что приложение открывается на экране входа в систему:
В настоящее время при нажатии «Войти» ничего не происходит. Это связано с тем, что невозможно сохранить учетные данные пользователя.Это то, что вы добавите в первую очередь.
Почему безопасность важна
Прежде чем углубляться в код, вы должны понять, почему безопасность в вашем приложении необходима. Безопасность вашего приложения особенно важна, если вы храните личные данные пользователей, такие как электронные письма, пароли или данные банковского счета.
Почему Apple так серьезно относится к безопасности? От сделанных вами фотографий до количества шагов, которые вы сделали в течение дня, ваш iPhone хранит много личных данных.Сохранение этих данных в безопасности очень важно.
Кто злоумышленники в экосистеме iOS и чего они хотят? Злоумышленник может быть преступником, бизнес-конкурентом, даже другом или родственником. Не все злоумышленники хотят одного и того же. Некоторые могут захотеть повредить или испортить информацию, в то время как другие могут захотеть посмотреть, какие подарки они получают на свои дни рождения.
Ваша задача - убедиться, что данные, хранящиеся в вашем приложении, защищены от потенциальных угроз.К счастью, Apple создала много сильных API, упрощающих эту задачу.
Брелок Apple
Одним из наиболее важных элементов безопасности для разработчиков Apple является связка ключей iOS , которая представляет собой специализированную базу данных для хранения метаданных и конфиденциальной информации. Использование Keychain - лучший способ хранить небольшие фрагменты данных, которые важны для вашего приложения, например секреты и пароли.
Зачем использовать Keychain вместо более простых решений? Разве недостаточно хранить код пользователя в кодировке base-64 в UserDefaults
? Точно нет! Для злоумышленника нетрудно восстановить пароль, сохраненный таким образом.Обеспечить безопасность сложно, и пытаться создать собственное решение - не лучшая идея. Даже если ваше приложение не для финансового учреждения, к хранению данных, вводимых пользователем, не следует относиться легкомысленно.
Прямое взаимодействие с Keychain затруднено, особенно в Swift. Вы должны использовать структуру безопасности, которая в основном написана на C.
.К счастью, вы можете избежать использования этих низкоуровневых API-интерфейсов, позаимствовав оболочку Swift из примера кода Apple GenericKeychain. KeychainPasswordItem предоставляет простой в использовании интерфейс Swift для Keychain и уже включен в начальный проект.
Пора погрузиться в код!
Использование брелка
Открыть AuthViewController.swift . Этот контроллер представления отвечает за форму входа, которую вы видели изначально. Если вы прокрутите вниз до раздела Actions , вы заметите, что signInButtonPressed
ничего не делает. Пора это изменить.Добавьте следующее в конец раздела Helpers :
private func signIn () {
// 1
view.endEditing (правда)
// 2
guard let email = emailField.text, email.count> 0 else {
возвращение
}
guard let password = passwordField.text, password.count> 0 else {
возвращение
}
// 3
пусть имя = UIDevice.current.name
let user = Пользователь (имя: имя, электронная почта: электронная почта)
}
Вот что происходит:
- Вы закрываете клавиатуру, чтобы подтвердить, что действие пользователя что-то привело.
- Вы берете электронную почту и пароль, введенные пользователем. Если любой из них имеет нулевую длину, вы не хотите продолжать. В реальном приложении вы также должны показать пользователю ошибку.
- Вы назначаете пользователю имя, которое для целей данного руководства вы берете из имени устройства.
Примечание: Вы можете изменить имя своего Mac (используемое сим-картой), перейдя в Системные настройки ▸ Общий доступ и изменив имя компьютера вверху. Кроме того, вы можете изменить имя своего iPhone, выбрав «Настройки» ▸ «Общие» ▸ «О программе» ▸ «Имя».
Теперь добавьте в signInButtonPressed
следующее:
войти в систему()
Это вызывает ваш метод signIn
, когда запускается signInButtonPressed
.
Найдите textFieldShould Верните
и замените разрыв
под регистром TextFieldTag.password.rawValue
на:
войти в систему()
Теперь signIn ()
вызывается, когда пользователь нажимает , возвращает на клавиатуре, в то время как поле пароля имеет фокус и содержит текст.
signIn ()
еще не завершена. Вам все еще нужно сохранить объект пользователя, а также пароль. Вы реализуете это во вспомогательном классе.
Откройте AuthController.swift , который является статическим классом, который будет содержать логику, связанную с аутентификацией для этого приложения.
Сначала добавьте следующее вверху файла над isSignedIn
:
static let serviceName = "FriendvatarsService"
Это определяет имя службы, которая будет использоваться для идентификации данных приложения в цепочке ключей .Чтобы использовать эту константу, создайте метод signIn
в конце класса, например:
class func signIn (_ user: User, password: String) выбрасывает {
попробуйте KeychainPasswordItem (service: serviceName, account: user.email) .savePassword (пароль)
Settings.currentUser = пользователь
}
Этот метод обеспечивает безопасное хранение регистрационной информации пользователя в связке ключей . Он создает KeychainPasswordItem
с указанным вами именем службы и уникальным идентификатором ( аккаунт
).
В этом приложении адрес электронной почты пользователя используется в качестве идентификатора для Keychain , но другими примерами могут быть идентификатор пользователя или уникальное имя пользователя. Наконец, Settings.currentUser
установлен с пользователем
- он хранится в UserDefaults
.
Этот метод не следует считать завершенным! Непосредственное сохранение пароля пользователя - не лучшая практика. Например, если злоумышленник взломал Apple Keychain , он мог прочитать пароли ваших пользователей в виде обычного текста.Лучшее решение - хранить хэш, созданный на основе личности пользователя.
Вверху AuthController.swift добавьте следующее под импортом Foundation
:
импортировать CryptoSwift
CryptoSwift - одна из самых популярных коллекций многих стандартных криптографических алгоритмов, написанных на Swift. Криптография сложна и ее нужно делать правильно, чтобы она была полезной. Использование популярной библиотеки для обеспечения безопасности означает, что вам не нужно нести ответственность за реализацию стандартизированных функций хеширования.Лучшая криптография открыта для всеобщего ознакомления.
Примечание : Платформа Apple CommonCrypto предоставляет вам множество полезных функций хеширования, но взаимодействовать с ней в Swift непросто. Вот почему для этого урока мы выбрали библиотеку CryptoSwift.
Затем добавьте следующее signIn
:
class func passwordHash (из электронной почты: String, пароль: String) -> String {
let salt = "x4vV8bGgqqmQwgCoyXFQj + (o.nUNQhVP7ND"
вернуть "\ (пароль).\ (электронная почта). \ (соль) ". sha256 ()
}
Этот метод принимает адрес электронной почты и пароль и возвращает хешированную строку. Соль - это уникальная строка, используемая для создания обычных паролей, ну, в общем, необычных. sha256 ()
- это метод CryptoSwift, который завершает тип хэша SHA-2 для вашей входной строки.
В приведенном выше примере злоумышленник, взломавший Keychain , найдет этот хеш. Злоумышленник может создать таблицу часто используемых паролей и их хэшей для сравнения с этим хешем.Если вы хешируете только ввод пользователя без использования солей, а пароль существовал в хэш-таблице злоумышленников, пароль будет скомпрометирован.
Добавление соли увеличивает сложность атаки. Кроме того, вы объединяете адрес электронной почты и пароль пользователя с солью, чтобы создать хэш, который будет нелегко взломать.
Примечание: Для аутентификации с помощью серверной части приложение и сервер будут использовать одну и ту же соль. Это позволяет им таким же образом создавать хэши и сравнивать два хэша для проверки идентичности.
Вернитесь в signIn (_: пароль :)
, замените строку, которая вызывает savePassword
, на эту:
пусть finalHash = passwordHash (от: user.email, пароль: пароль)
попробуйте KeychainPasswordItem (service: serviceName, account: user.email) .savePassword (finalHash)
signIn
теперь хранит надежный хэш, а не необработанный пароль. Пришло время добавить это в контроллер представления.
Вернитесь к AuthViewController.swift и добавьте следующее в конец signIn ()
:
делать {
попробуйте AuthController.signIn (пользователь, пароль: пароль)
} поймать {
print ("Ошибка входа: \ (error.localizedDescription)")
}
Хотя при этом будет сохранен пользователь и хешированный пароль, потребуется немного больше времени, чтобы приложение было подписано в. AppController.swift нуждается в способе получать уведомления при изменении аутентификации.
Вы могли заметить, что AuthController.swift имеет статическую переменную с именем isSignedIn
. В настоящее время он всегда возвращает false
, даже если пользователь входит в систему.
В AuthController.swift , обновление подписано в
на:
static var isSignedIn: Bool {
// 1
guard let currentUser = Settings.currentUser else {
вернуть ложь
}
делать {
// 2
let password = попробуйте KeychainPasswordItem (service: serviceName, account: currentUser.электронная почта) .readPassword ()
вернуть пароль.count> 0
} поймать {
вернуть ложь
}
}
Вот что происходит:
- Сразу же вы проверяете текущего пользователя, сохраненного в
UserDefaults
. Если пользователь не существует, не будет идентификатора для поиска хэша пароля в цепочке ключей , поэтому вы указываете, что они не вошли в систему. - Вы читаете хэш пароля из Связки ключей , и если пароль существует и не пуст, считается, что пользователь вошел в систему.
Теперь handleAuthState
в AppController.swift будет работать правильно, но для правильного обновления пользовательского интерфейса потребуется новый запуск приложения после входа в систему. Вместо этого хороший способ уведомить приложение об изменении состояния, таком как аутентификация, - это уведомления.
Добавьте следующее в конец AuthController.swift :
extension Notification.Name {
static let loginStatusChanged = Notification.Name ("com.razeware.auth.changed ")
}
При составлении настраиваемых уведомлений рекомендуется использовать обратный идентификатор домена, который обычно выводится из идентификатора пакета приложения. Использование уникального идентификатора может помочь при отладке, чтобы все, что связано с вашим уведомлением, отличалось от других фреймворков, упомянутых в ваших журналах.
Чтобы использовать это настраиваемое имя уведомления, добавьте следующее в конец signIn (_: пароль :)
:
Центр уведомлений.default.post (имя: .loginStatusChanged, объект: ноль)
При этом будет опубликовано уведомление, которое могут увидеть другие части приложения.
Внутри AppController.swift добавьте метод init
выше show (in :)
:
в этом() {
NotificationCenter.default.addObserver (
я
селектор: #selector (handleAuthState),
имя: .loginStatusChanged,
объект: ноль
)
}
Это зарегистрирует AppController как наблюдателя вашего уведомления о входе в систему.Он вызовет handleAuthState
при запуске.
Сборка и запуск. После входа в систему, используя любую комбинацию адреса электронной почты и пароля, вы увидите список друзей:
Вы заметите, что здесь нет аватаров, только имена друзей. На это не очень приятно смотреть. Вам, вероятно, следует выйти и забыть об этом незаконченном приложении. Да ладно, даже кнопка выхода не работает. Пора оставить отзыв на 1 звезду и действительно отдать его разработчику!
Вход в систему работает отлично, но выйти из приложения невозможно.На самом деле этого довольно легко добиться, поскольку есть уведомление, которое сигнализирует о любом изменении состояния аутентификации.
Вернитесь к AuthController.swift и добавьте следующий метод под signIn (_: пароль :)
:
class func signOut () выбрасывает {
// 1
guard let currentUser = Settings.currentUser else {
возвращение
}
// 2
попробуйте KeychainPasswordItem (service: serviceName, account: currentUser.email).удалить пункт()
// 3
Settings.currentUser = nil
NotificationCenter.default.post (имя: .loginStatusChanged, объект: ноль)
}
Это довольно просто, но вот разбивка:
- Вы проверяете, сохранили ли вы текущего пользователя, и выходите из игры раньше, если нет.
- Вы удаляете хэш пароля из Связки ключей .
- Вы очищаете объект пользователя и публикуете уведомление.
Чтобы подключить это, перейдите к FriendsViewController.swift и добавьте в текущий пустой signOut
следующее:
пытаться? AuthController.signOut ()
Ваш новый метод вызывается для очистки данных вошедшего в систему пользователя при нажатии кнопки «Выйти».
Это хорошая идея - обрабатывать ошибки в ваших приложениях, но ради этого руководства вы просто проигнорируете любую ошибку.
Build and run, затем нажмите кнопку Выйти .
Теперь у вас есть полный пример аутентификации, работающей в приложении!
Хеширование
Вы проделали большую работу по настройке аутентификации! Однако веселье еще не закончилось.Теперь вы заполните пустое место перед именами в окне друзей.
В FriendsViewController.swift отображается список объектов модели Пользователь
. Вы также хотите отображать изображения аватаров для каждого пользователя в представлении. Поскольку в User
есть только два атрибута, имя и адрес электронной почты, как вы должны показывать изображение?
Оказывается, существует служба, которая берет адрес электронной почты и связывает его с изображением аватара: Gravatar! Если вы раньше не слышали о Gravatar, его часто используют в блогах и на форумах, чтобы глобально связать адрес электронной почты с аватаром.Это упрощает работу, так что пользователям не нужно загружать новый аватар на каждый форум или сайт, к которому они присоединяются.
У каждого из этих пользователей уже есть аватар, связанный с его электронной почтой. Поэтому единственное, что вам нужно сделать, это сделать запрос в Gravatar и получить их изображения. Для этого вы создадите хэш MD5 их электронной почты, чтобы создать URL-адрес запроса.
Если вы посмотрите документацию на сайте Gravatar, вы увидите, что вам нужен хешированный адрес электронной почты для создания запроса. Это будет несложно, так как вы можете использовать CryptoSwift
.Добавьте следующее вместо комментария о Gravatar в tableView (_: cellForRowAt :)
:
// 1
пусть emailHash = user.email.trimmingCharacters (в: .whitespacesAndNewlines)
.lowercased ()
.md5 ()
// 2
if let url = URL (string: "https://www.gravatar.com/avatar/" + emailHash) {
URLSession.shared.dataTask (with: url) {данные, ответ, ошибка в
guard let data = data, let image = UIImage (data: data) else {
возвращение
}
// 3
я.imageCache.setObject (изображение, forKey: user.email как NSString)
DispatchQueue.main.async {
// 4
self.tableView.reloadRows (в: [indexPath], с: .automatic)
}
}.продолжить()
}
Вот разбивка:
- Сначала вы нормализуете электронную почту в соответствии с документами Gravatar, затем вы создаете хеш MD5 .
- Вы создаете URL Gravatar и URLSession. Вы загружаете
UIImage
из возвращенных данных. - Вы кешируете изображение, чтобы избежать повторной выборки адреса электронной почты.
- Вы перезагружаете строку в табличном представлении, чтобы появилось изображение аватара.
Сборка и запуск. Теперь вы можете просматривать изображения и имена аватаров ваших друзей:
Примечание: Если в вашем электронном письме отображается белый цвет по умолчанию на синем G, перейдите на сайт Gravatar, загрузите свой собственный аватар и присоединитесь к своим друзьям!
Куда идти дальше?
Теперь у вас есть законченное приложение, которое обеспечивает базовую безопасность и аутентификацию iOS, и вы можете просматривать аватары, созданные на Gravatar.Вы узнали о важности безопасности, о связке ключей iOS и некоторых передовых методах, таких как хранение хэшей вместо значений в виде обычного текста. Надеюсь, вы тоже отлично провели время, узнав об этом!
Вы можете загрузить законченную версию проекта, используя кнопку Загрузить материалы вверху или внизу этого руководства.
Если вас интересуют другие способы защиты ваших приложений, научитесь использовать биометрические датчики в последних продуктах Apple в этом руководстве.
Вы также можете узнать больше о структуре безопасности Apple, если хотите по-настоящему вникнуть в нее.
Наконец, обязательно изучите дополнительные алгоритмы безопасности, предоставляемые CryptoSwift.
Надеюсь, вам понравился этот урок! Если у вас есть вопросы или комментарии, присоединяйтесь к обсуждению ниже!
raywenderlich.com Еженедельник
Информационный бюллетень raywenderlich.com - это самый простой способ оставаться в курсе всего, что вам нужно знать как разработчику мобильных приложений.
Получайте еженедельный дайджест наших руководств и курсов, а в качестве бонуса получите бесплатный углубленный курс по электронной почте!
.Брелок- Gentoo Wiki
В этом документе описывается, как использовать общие ключи SSH вместе с программой связки ключей. Это предполагает базовые знания криптографии с открытым ключом.
Фон
Проблема под рукой
Необходимость вводить пароли для входа в систему в каждой системе неудобна, особенно если многие системы находятся под управлением. Некоторым администраторам может даже понадобиться скрипт или задание cron, которым нужен удобный способ использования ssh-соединения.В любом случае есть решение этой проблемы, и оно начинается с аутентификации с открытым ключом.
Как работает аутентификация с открытым ключом?
Предположим, что клиент хочет подключиться к демону ssh на сервере. Клиент сначала генерирует пару ключей и передает открытый ключ серверу. Впоследствии, всякий раз, когда клиент пытается подключиться, сервер отправляет запрос, который зашифрован этим открытым ключом. Только владелец соответствующего закрытого ключа (клиент) может его расшифровать, поэтому правильный ответ приводит к успешной аутентификации.
Как использовать аутентификацию с открытым ключом
Создание пары ключей
Первый шаг - создать пару ключей. Для этого воспользуйтесь командой ssh-keygen:
Примите значения по умолчанию и убедитесь, что ввели надежную парольную фразу.
Предупреждение
Убедитесь, что выбрали надежную парольную фразу, особенно если этот ключ используется для входа в систему с правами root!
После завершения генерации закрытый ключ должен быть расположен в ~ / .ssh / id_rsa, а открытый ключ - в ~ /.ssh / id_rsa.pub. Открытый ключ теперь готов к копированию на удаленный хост.
Добавить или изменить парольную фразу для закрытого ключа можно следующим образом:
пользователь $
ssh-keygen -p -f ~ / .ssh / id_rsa
Подготовка сервера
Файл ~ / .ssh / id_rsa.pub необходимо скопировать на сервер, на котором запущен sshd. Его необходимо добавить в файл ~ / .ssh / authorized_keys, который принадлежит подключающемуся пользователю на удаленном сервере. После того, как персонал инфраструктуры предоставил SSH-доступ к серверу, можно использовать следующие шаги для настройки автоматического входа в систему с использованием открытого ключа на удаленном сервере:
пользователь $
ssh-copy-id -i ~ /.ssh / id_rsa.pub server_user @ server
ssh-copy-id - это сценарий-оболочка для этих шагов. Если этот сценарий оболочки недоступен, можно использовать следующие шаги:
пользователь $
scp ~ / .ssh / id_rsa.pub server_user @ server: ~ / myhost.pub
пользователь $
ssh server_user @ server "cat ~ / myhost.pub >> ~ / .ssh / authorized_keys"
пользователь $
ssh server_user @ server "cat ~ / .ssh / authorized_keys"
Вывод из этой последней строки должен отображать содержимое файла ~ /.ssh / authorized_keys файл. Убедитесь, что результат выглядит правильно.
Тестирование установки
Теоретически, если все прошло хорошо и демон sshd на сервере позволяет это (поскольку это можно настроить), доступ по ssh без ввода пароля теперь должен быть возможен на сервере. Закрытый ключ на клиенте по-прежнему необходимо будет расшифровать с помощью ранее использованной парольной фразы, но ее не следует путать с паролем учетной записи пользователя на сервере.
пользователь $
ssh
Он должен был запросить кодовую фразу для id_rsa, а затем предоставить доступ через ssh как пользователь
на сервере.Если нет, войдите в систему как
и убедитесь, что в содержимом ~ / .ssh / authorized_keys каждая запись (которая является открытым ключом) находится в одной строке. Также рекомендуется проверить конфигурацию sshd, чтобы убедиться, что она позволяет использовать авторизацию с открытым ключом, если она доступна.
В этот момент читатели могут подумать: «Какой смысл, я просто заменил один пароль другим ?!» Расслабьтесь, в следующем разделе будет показано, как именно мы можем использовать это, чтобы ввести кодовую фразу только один раз и повторно использовать (расшифрованный) ключ для нескольких входов в систему.
Создание удобной аутентификации с открытым ключом
Типичное управление ключами с помощью ssh-agent
Следующий шаг - один раз расшифровать закрытый ключ (ключи) и получить возможность свободно пользоваться ssh без каких-либо паролей. Именно для этого и предназначена программа ssh-agent.
ssh-agent обычно запускается в начале X-сеанса или из сценария запуска оболочки, например ~ / .bash_profile. Он работает путем создания сокета UNIX и регистрации соответствующих переменных среды, чтобы все последующие приложения могли воспользоваться его услугами, подключившись к этому сокету.Ясно, что имеет смысл запускать его только в родительском процессе X-сеанса, чтобы использовать набор расшифрованных закрытых ключей во всех последующих X-приложениях.
Примечание
Этот ssh-агент будет хранить ключи в расшифрованном виде до тех пор, пока он не будет уничтожен. Чтобы установить время жизни ключей, используйте аргумент -t
, как описано в man ssh-agent.
При запуске ssh-agent он должен вывести PID запущенного ssh-agent, а также установить несколько переменных среды, а именно SSH_AUTH_SOCK и SSH_AGENT_PID .Он также должен автоматически добавлять ~ / .ssh / id_rsa в свою коллекцию и запрашивать у пользователя соответствующую парольную фразу. Если существуют другие закрытые ключи, которые необходимо добавить к работающему ssh-agent, используйте команду ssh-add:
пользователь $
ssh-add somekeyfile
Теперь о волшебстве. Когда расшифрованный закрытый ключ готов, отправьте ssh на сервер (с настроенным открытым ключом) без ввода каких-либо паролей:
Для того, чтобы выключить ssh-agent (и, следовательно, потребовать повторного ввода парольной фразы позже):
Примечание
Может быть запущено несколько процессов ssh-agent, особенно если первоначальная настройка потребовала некоторых усилий и испытаний.Эти процессы можно остановить, как и любой другой процесс, запустив killall ssh-agent.
Чтобы получить еще больше удобства от ssh-agent, перейдите к следующему разделу, посвященному использованию связки ключей. Обязательно завершите работу запущенного ssh-agent, поскольку связка ключей сама будет обрабатывать сеансы ssh-agent.
Выжимая из ssh-agent до последней капли удобства
Keychain позволит повторно использовать ssh-agent между входами в систему и, при необходимости, запрашивать парольные фразы каждый раз, когда пользователь входит в систему. Давайте сначала выведем его:
root #
emerge --ask net-misc / keychain
Если это было успешно, теперь можно использовать связку ключей.Добавьте следующее в файл ~ / .bash_profile, чтобы включить его:
ФАЙЛ ~ / .bash_profile
Включение связки ключей
Связка ключей ~ / .ssh / id_rsa . ~ / .keychain / $ {HOSTNAME} -sh . ~ / .keychain / $ {HOSTNAME} -sh-gpg
Примечание
При желании в командную строку можно добавить больше закрытых ключей. Кроме того, чтобы он запрашивал парольные фразы при каждом создании оболочки, добавьте параметр --clear
.
Примечание
Если bash не используется, проверьте раздел EXAMPLES цепочки ключей man для примеров использования в других оболочках.Идея состоит в том, чтобы эти команды запускались каждый раз при использовании оболочки.
А теперь проверьте это. Сначала убедитесь, что процессы ssh-agent из предыдущего раздела убиты, затем запустите новую оболочку, обычно просто войдя в систему или создав новый терминал. Он должен запрашивать пароль для каждого ключа, указанного в командной строке. Все оболочки, открытые после этого момента, должны повторно использовать ssh-agent, что позволяет многократно использовать беспарольные ssh-соединения.
Использование связки ключей с Plasma 5
Пользователи Plasma 5 вместо использования ~ /.bash_profile, может позволить Plasma управлять ssh-agent за них. Для этого отредактируйте /etc/xdg/plasma-workspace/env/10-agent-startup.sh, который читается во время запуска Plasma, и / etc / xdg / Plasma-workspace / shutdown / 10-agent-shutdown. .sh, который выполняется при завершении работы.
Вот как можно редактировать эти файлы:
ФАЙЛ /etc/xdg/plasma-workspace/env/10-agent-startup.sh
Редактирование для Plasma 5
ФАЙЛ / etc / xdg / Plasma-Workspace / shutdown / 10-agent-shutdown.sh
Редактирование для Plasma 5
if [-n "$ {SSH_AGENT_PID}"]; затем eval "$ (ssh-agent -k)" фи
Теперь все, что нужно сделать, - это запустить любой терминал, например kde-apps / konsole, и загрузить нужный набор ключей. Например:
пользователь $
брелок ~ / .ssh / id_rsa
Ключи будут запоминаться до конца сеанса Plasma (или до тех пор, пока процесс ssh-agent не будет отключен вручную).
В качестве альтернативы используйте KWallet с kde-Plasma / ksshaskpass под Plasma 5
Вы также можете настроить Plasma для автоматического запроса вашей парольной фразы при входе в систему.Emerge kde-Plasma / ksshaskpass, который настроит переменную среды для использования приложения ksshaskpass всякий раз, когда ssh-add запускается вне терминала. Затем создайте сценарий следующим образом и установите его через Plasma -> Параметры системы -> Запуск и выключение -> Автозапуск.
ФАЙЛ ~ / ssh.sh
Создать сценарий ssh.sh
#! / Bin / sh ssh-add dev / null
Примечание
Последние версии плазмы, похоже, требуют, чтобы сценарии автозапуска имели разрешения только для пользователя.Вам может потребоваться chmod 700 ssh.sh
перед добавлением скрипта через графический интерфейс Autostart
Соображения безопасности
Конечно, использование ssh-agent может немного повысить безопасность системы. Если другой пользователь получит доступ к работающей оболочке, он сможет войти на все серверы без паролей. В результате это представляет опасность для серверов, и пользователи должны обязательно ознакомиться с локальной политикой безопасности (если таковая имеется). Обязательно примите соответствующие меры для обеспечения безопасности всех сеансов.
Поиск и устранение неисправностей
Большая часть этого должна работать хорошо, но если проблемы все же возникнут, то следующие пункты могут оказаться полезными.
- Если подключение без ssh-agent не работает, рассмотрите возможность использования ssh с параметрами
-vvv
, чтобы узнать, что происходит. Иногда сервер не настроен для использования аутентификации с открытым ключом, иногда он все равно настроен на запрос локальных паролей! В этом случае попробуйте использовать опцию-o
с ssh или измените sshd_config сервера. - Если соединение с ssh-agent или связкой ключей не работает, возможно, текущая оболочка не понимает используемые команды. Обратитесь к страницам руководства для ssh-agent и связки ключей для получения подробной информации о работе с другими оболочками.
Внешние ресурсы
Эта страница основана на документе, который ранее находился на нашем основном сайте gentoo.org.
Следующие люди внесли свой вклад в оригинальный документ: Eric Brown, Marcelo Goes,
Они перечислены здесь, потому что история вики не допускает никакой внешней ссылки.Если вы редактируете вики-статью, пожалуйста, добавьте сюда , а не ; ваш вклад записывается на соответствующей странице истории каждой статьи.
5 распространенных проблем с связкой ключей на Mac и способы их устранения
MakeUseOf - Политика конфиденциальностиМы уважаем вашу конфиденциальность и обязуемся защищать вашу конфиденциальность во время работы в сети на нашем сайт. Ниже раскрываются методы сбора и распространения информации для этой сети. сайт.
Последний раз политика конфиденциальности обновлялась 10 мая 2018 г.
Право собственностиMakeUseOf («Веб-сайт») принадлежит и управляется Valnet inc.(«Нас» или «мы»), корпорация зарегистрирован в соответствии с законодательством Канады, с головным офисом по адресу 7405 Transcanada Highway, Люкс 100, Сен-Лоран, Квебек h5T 1Z2.
Собранные персональные данныеКогда вы посещаете наш веб-сайт, мы собираем определенную информацию, относящуюся к вашему устройству, например, ваше IP-адрес, какие страницы вы посещаете на нашем веб-сайте, ссылались ли вы на другие веб-сайт, и в какое время вы заходили на наш веб-сайт.
Мы не собираем никаких других персональных данных.Если вы заходите на наш сайт через учетной записи в социальной сети, пожалуйста, обратитесь к политике конфиденциальности поставщика социальных сетей для получения информации относительно их сбора данных.
Файлы журналаКак и большинство стандартных серверов веб-сайтов, мы используем файлы журналов. Это включает интернет-протокол (IP) адреса, тип браузера, интернет-провайдер (ISP), страницы перехода / выхода, тип платформы, дата / время и количество кликов для анализа тенденций, администрирования сайта, отслеживания пользователей движение в совокупности и собирать широкую демографическую информацию для совокупного использования.
Файлы cookieФайл cookie - это фрагмент данных, хранящийся на компьютере пользователя, связанный с информацией о пользователе. Мы и некоторые из наших деловых партнеров (например, рекламодатели) используем файлы cookie на нашем веб-сайте. Эти файлы cookie отслеживают использование сайта в целях безопасности, аналитики и целевой рекламы.
Мы используем следующие типы файлов cookie:
- Основные файлы cookie: эти файлы cookie необходимы для работы нашего веб-сайта.
- Функциональные cookie-файлы: эти cookie-файлы помогают нам запоминать выбор, который вы сделали на нашем веб-сайте, запоминать ваши предпочтения и персонализировать ваш опыт работы с сайтом.
- Аналитические и рабочие файлы cookie: эти файлы cookie помогают нам собирать статистические и аналитические данные об использовании веб-сайта.
- Файлы cookie социальных сетей: эти файлы cookie позволяют вам взаимодействовать с контентом на определенных платформах социальных сетей, например, «лайкать» наши статьи. В зависимости от ваших социальных сетей настройки, сеть социальных сетей будет записывать это и может отображать ваше имя или идентификатор в связи с этим действием.
- Рекламные и таргетированные рекламные файлы cookie: эти файлы cookie отслеживают ваши привычки просмотра и местоположение, чтобы предоставить вам рекламу в соответствии с вашими интересами. См. Подробности в разделе «Рекламодатели» ниже.
Если вы хотите отключить файлы cookie, вы можете сделать это в настройках вашего браузера. Для получения дополнительной информации о файлах cookie и способах управления ими, см. http://www.allaboutcookies.org/.
Пиксельные тегиМы используем пиксельные теги, которые представляют собой небольшие графические файлы, которые позволяют нам и нашим доверенным сторонним партнерам отслеживать использование вашего веб-сайта и собирать данные об использовании, включая количество страниц, которые вы посещаете, время, которое вы проводите на каждой странице, то, что вы нажимаете дальше, и другую информацию о посещении вашего веб-сайта.
РекламодателиМы пользуемся услугами сторонних рекламных компаний для показа рекламы, когда вы посещаете наш веб-сайт. Эти компании могут использовать информацию (не включая ваше имя, адрес, адрес электронной почты или номер телефона) о ваших посещениях этого и других веб-сайтов для размещения рекламы товаров и услуг, представляющих для вас интерес. Если вы хотите получить дополнительную информацию об этой практике и узнать, как можно отказаться от использования этой информации этими компаниями, щелкните здесь.
Рекламодатели, как сторонние поставщики, используют файлы cookie для сбора данных об использовании и демографических данных для показа рекламы на нашем сайте. Например, использование Google Файлы cookie DART позволяют показывать рекламу нашим пользователям на основе их посещения наших сайтов и других сайтов в Интернете. Пользователи могут отказаться от использования DART cookie, посетив политику конфиденциальности Google для рекламы и содержательной сети.
Мы проверили все политики наших рекламных партнеров, чтобы убедиться, что они соответствуют всем применимым законам о конфиденциальности данных и рекомендуемым методам защиты данных.
Мы используем следующих рекламодателей:
Ссылки на другие веб-сайтыЭтот сайт содержит ссылки на другие сайты. Помните, что мы не несем ответственности за политика конфиденциальности таких других сайтов. Мы призываем наших пользователей знать, когда они покидают нашу сайт, и прочитать заявления о конфиденциальности каждого веб-сайта, который собирает лично идентифицируемая информация. Это заявление о конфиденциальности применяется исключительно к информации, собираемой этим Интернет сайт.
Цель сбора данныхМы используем информацию, которую собираем, чтобы:
- Администрирование нашего веб-сайта, включая устранение неполадок, статистический анализ или анализ данных;
- Для улучшения нашего Веб-сайта и повышения качества обслуживания пользователей, обеспечивая вам доступ к персонализированному контенту в соответствии с вашими интересами;
- Анализируйте использование пользователями и оптимизируйте наши услуги.
- Для обеспечения безопасности нашего веб-сайта и защиты от взлома или мошенничества.
- Делитесь информацией с нашими партнерами для предоставления таргетированной рекламы и функций социальных сетей.
Мы не продаем и не сдаем в аренду ваши личные данные третьим лицам. Однако наши партнеры, в том числе рекламные партнеры, может собирать данные об использовании вашего веб-сайта, как описано в настоящем документе. См. Подробности в разделе «Рекламодатели» выше.
Как хранятся ваши данныеВсе данные, собранные через наш Веб-сайт, хранятся на серверах, расположенных в США.Наши серверы сертифицированы в соответствии с Соглашением о защите конфиденциальности между ЕС и США.
IP-адрес и строковые данные пользовательского агента от всех посетителей хранятся в ротационных файлах журнала на Amazon. сервера на срок до 7 дней. Все наши сотрудники, агенты и партнеры стремятся сохранить ваши данные конфиденциальны.
Мы проверили политику конфиденциальности наших партнеров, чтобы убедиться, что они соответствуют аналогичным политикам. для обеспечения безопасности ваших данных.
Согласие в соответствии с действующим законодательствомЕсли вы проживаете в Европейской экономической зоне («ЕЭЗ»), окно согласия появится, когда доступ к этому сайту.Если вы нажали «да», ваше согласие будет храниться на наших серверах в течение двенадцать (12) месяцев, и ваши данные будут обработаны в соответствии с настоящей политикой конфиденциальности. После двенадцати месяцев, вас снова попросят дать согласие.
Мы соблюдаем принципы прозрачности и согласия IAB Europe.
Вы можете отозвать согласие в любое время. Отзыв согласия может ограничить вашу возможность доступа к определенным услугам и не позволит нам обеспечить персонализированный опыт работы с сайтом.
Безопасность данныхНаши серверы соответствуют ISO 27018, сводам правил, направленных на защиту личных данных. данные в облаке. Мы соблюдаем все разумные меры предосторожности, чтобы гарантировать, что ваши данные безопасность.
В случае, если нам станет известно о любом нарушении безопасности данных, изменении, несанкционированном доступе или раскрытие каких-либо личных данных, мы примем все разумные меры предосторожности для защиты ваших данных и уведомит вас в соответствии с требованиями всех применимых законов.
Доступ, изменение и удаление ваших данныхВы имеете право запросить информацию о данных, которые у нас есть для вас, чтобы запросить исправление и / или удаление вашей личной информации. пожалуйста, свяжитесь с нами в [email protected] или по указанному выше почтовому адресу, внимание: Отдел соблюдения требований данных.
ВозрастЭтот веб-сайт не предназначен для лиц младше 16 лет. Посещая этот веб-сайт. Вы настоящим гарантируете, что вам исполнилось 16 лет или вы посещаете Веб-сайт под присмотром родителей. надзор.
Заявление об отказе от ответственностиХотя мы прилагаем все усилия для сохранения конфиденциальности пользователей, нам может потребоваться раскрыть личную информацию, когда требуется по закону, когда мы добросовестно полагаем, что такие действия необходимы для соблюдения действующего судебное разбирательство, постановление суда или судебный процесс, обслуживаемый на любом из наших сайтов.
Уведомление об измененияхКаждый раз, когда мы изменяем нашу политику конфиденциальности, мы будем публиковать эти изменения на этой странице Политики конфиденциальности и других места, которые мы считаем подходящими, чтобы наши пользователи всегда знали, какую информацию мы собираем, как мы ее используем, и при каких обстоятельствах, если таковые имеются, мы ее раскрываем.
Контактная информацияЕсли у пользователей есть какие-либо вопросы или предложения относительно нашей политики конфиденциальности, свяжитесь с нами по адресу [email protected] или по почте на указанный выше почтовый адрес, внимание: Департамент соответствия данных.
.