
Защита программы
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- Полимат
- Сообщения: 1810
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 24 раза
- Поблагодарили: 10 раз
Защита программы
так пусть будет вход на сервер через одного серверного пользователя, кстати соединение может быть и не видно при входе в программу, а логин и пароль для пользователя вводят после коннекта перед открытием приложения, вот этих пользователей и проверять на количество записей (count) в таблице списка пользователей БД 

“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Защита программы
Kreator - очень правильная идея!kreator писал(а): На сегодняшний день рассчитывать на то, что пользователю нужно обновление, неправильно. У нас есть клиенты, которые годами ничего не требуют. А нам жить как-то надо . Вариант - платить за поддержку тоже не катит (это уже оффтопик), программа работает надёжно. Нужно ориентироваться на "подписку". Но я пока понимания с этой моей идеей не нахожу.

Но для её реализации необходимо разработать комплекс юридических и технических мероприятий взаимодействия клиента с разработчиком.
Kreator, огромная просьба, если не коммерческий секрет - выскажи, пожалуйста, твое видение продажи и сопровождения коммерческого программного продукта по "подписке" на сколько это возможно, как с технической так и юридической точки зрения

С Уважением, Developer
-
- ✯ Ветеран ✯
- Сообщения: 5160
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Защита программы
Нет, не так, может быть, не совсем так. Если работаем на SQL (есть SQL сервер). Если посмотреть как раздают лицензии производители SQL серверов. Ориентируюсь на SQLAnywhere. Есть два типа лицензии - per user и per seat, т.е. на вход пользователя и на вход ip-адреса. Надо примерно сделать также. По мне предпочтителен второй вариант, потому что я видел в Sybase Central, что даже, если запущен один экземпляр программы, разные треды могут иметь разные коннекты (может, это глюк Клариона, но факт). Во всяком случае, сервак должен выдавать информацию по коннектам (В Вашем случае - однозначно надо ориентировать на ip, сервак не знает Ваших внутренних пользователей). Коннекты очень хорошо сбрасываются, имею ввиду нажёжно, пользователь вышел, завис, коннект сбросился. В общем можно на это ориентироваться. Почему сложно ориентироваться на внутренних пользователей? Допустим, программа при входе пишет в некую таблицу - "Такой-то пользователь зашёл", при выходе удаляет. Но если программа зависла, то всё, проблема. Это сто раз здесь обсуждалось. Поэтому народ и использует tps.gopstop2007 писал(а):так пусть будет вход на сервер через одного серверного пользователя, кстати соединение может быть и не видно при входе в программу, а логин и пароль для пользователя вводят после коннекта перед открытием приложения, вот этих пользователей и проверять на количество записей (count) в таблице списка пользователей БД
Весь мир перешёл на это. Тут дело в цене, сделайте цену адекватную и пользователь поймёт. Есть пример, программа Oasis (может была), передача данных в электронном виде в пенсионный фонд. Такого же типа ЭОН. Ценовая политика такая - 3000р первый год, 2000 второй и далее. Правда, потом почему-то они перестали делать скидку на второй год, монополистами, наверно, стали. Техническая реализация вообще простая, храниться дата регистрации и срок лицензии, при входе в программу это дело проверяется. Надо, правда, защититься от изменения системной даты. Но это сейчас маловероятный случай, Винда сама дату синхронизирует. Ещё момент. Неправильно, чтобы программа не работала по окончании срока лицензии. Нужно отрубить некий важный функционал, например добавление новых записей. А старые пускай смотрят.Developer писал(а):Kreator, огромная просьба, если не коммерческий секрет - выскажи, пожалуйста, твое видение продажи и сопровождения коммерческого программного продукта по "подписке" на сколько это возможно, как с технической так и юридической точки зрения
Developer, идея для Вас. Когда у меня возникло недопонимание с "заказчиком", у которого крутиться SQLAnywhere (очень своеобразные коммерческие отношения у меня с ним), сделал такой вариант. Ну очень жёсткий. У SQLAnywhere есть такой запрос:
Код: Выделить всё
STOP ENGINE UNCONDITIONALLУ
Останавливает сервак однозначно, несмотря на коннекты и т.д. В БД стал хранить нужную дату. Клиентская программа коннектится к серваку, проверяет дату, если просрочка, то останавливает сервак, дата сдвигается, допустим на две недели. Админ поднимает сервер, естественно ничего не понимает, типа случайно остановился. Через две недели снова, дата сдвигается на неделю, админ думает "Опа, однако тенденция". Руководству, как правило, на...ть. Доходим до ситуации, что при любом коннекте сервак останавливается (дата уже никуда не сдвигается). Зовём разработчиков, налаживаем отношения

We are hard at work… for you. 

Защита программы
Kreator, ОГРОМНОЕ Спасибо за персональные идеи!kreator писал(а): Весь мир перешёл на это. Тут дело в цене, сделайте цену адекватную и пользователь поймёт. Есть пример, программа Oasis (может была), передача данных в электронном виде в пенсионный фонд. Такого же типа ЭОН. Ценовая политика такая - 3000р первый год, 2000 второй и далее. Правда, потом почему-то они перестали делать скидку на второй год, монополистами, наверно, стали. Техническая реализация вообще простая, храниться дата регистрации и срок лицензии, при входе в программу это дело проверяется. Надо, правда, защититься от изменения системной даты. Но это сейчас маловероятный случай, Винда сама дату синхронизирует. Ещё момент. Неправильно, чтобы программа не работала по окончании срока лицензии. Нужно отрубить некий важный функционал, например добавление новых записей. А старые пускай смотрят.
Developer, идея для Вас. Когда у меня возникло недопонимание с "заказчиком", у которого крутиться SQLAnywhere (очень своеобразные коммерческие отношения у меня с ним), сделал такой вариант. Ну очень жёсткий. У SQLAnywhere есть такой запрос:
STOP ENGINE UNCONDITIONALLУ
Останавливает сервак однозначно, несмотря на коннекты и т.д. В БД стал хранить нужную дату. Клиентская программа коннектится к серваку, проверяет дату, если просрочка, то останавливает сервак, дата сдвигается, допустим на две недели. Админ поднимает сервер, естественно ничего не понимает, типа случайно остановился. Через две недели снова, дата сдвигается на неделю, админ думает "Опа, однако тенденция". Руководству, как правило, на...ть. Доходим до ситуации, что при любом коннекте сервак останавливается (дата уже никуда не сдвигается). Зовём разработчиков, налаживаем отношения .

Возьму на заметку для реализации

А есть ли какие юридические особенности договорных отношений связанные с реализацией программного обеспечения по подписке?
С Уважением, Developer
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация:
Защита программы
Добрый день!
А особенностей - прочитайте, например, лицензионное соглашение DrWeb - у них лицензия на ограниченное время.
Алексей
Все определяется в документе, который программистам лень писать, а Заказчикам лень читать: "Лицензионное соглашение".
А особенностей - прочитайте, например, лицензионное соглашение DrWeb - у них лицензия на ограниченное время.
Алексей
Защита программы
Алексей, спасибо за ответ!
Антивирусным программным обеспечением DrWeb не пользуюсь
Если у Вас есть лицензионное соглашение DrWeb, просьба выслать мне в личный раздел.
А вообще, правильная идея - юридические вопросы и тонкости необходимо почерпнуть из лицензионных соглашений на программное обеспечение с ограниченным сроком действия для конечного пользователя
Антивирусным программным обеспечением DrWeb не пользуюсь
Если у Вас есть лицензионное соглашение DrWeb, просьба выслать мне в личный раздел.
А вообще, правильная идея - юридические вопросы и тонкости необходимо почерпнуть из лицензионных соглашений на программное обеспечение с ограниченным сроком действия для конечного пользователя

С Уважением, Developer
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация:
Защита программы
Kreator, а каким образом у Вас решён вопрос от модификации информации (даты отсчёта лицензии) системным администратором в БД Sybase SQL Anywherekreator писал(а): Developer, идея для Вас. Когда у меня возникло недопонимание с "заказчиком", у которого крутиться SQLAnywhere (очень своеобразные коммерческие отношения у меня с ним), сделал такой вариант. Ну очень жёсткий. У SQLAnywhere есть такой запрос:
КОД: ВЫДЕЛИТЬ ВСЁ
STOP ENGINE UNCONDITIONALLУ
Останавливает сервак однозначно, несмотря на коннекты и т.д. В БД стал хранить нужную дату. Клиентская программа коннектится к серваку, проверяет дату, если просрочка, то останавливает сервак, дата сдвигается, допустим на две недели.

Если только системный администратор не имеет административных прав на эту базу?

Или как-то иначе?

С Уважением, Developer
-
- ✯ Ветеран ✯
- Сообщения: 5160
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Защита программы
А зачем администратору это знать? Вы даёте администратору полное описание БД (табличные поля, связи)? Или предполагается, что он будет искать нужную информацию сам?Developer писал(а):Kreator, а каким образом у Вас решён вопрос от модификации информации (даты отсчёта лицензии) системным администратором в БД Sybase SQL Anywhere
We are hard at work… for you. 

Защита программы
Если я правильно понял в данном решении - владелец базы данных и одновременно SA будет разработчик?
С Уважением, Developer
-
- ✯ Ветеран ✯
- Сообщения: 5160
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Защита программы
Не, ну нормально отвечать вопросом на вопрос. У Вас как? Думаю, не всякий работодатель может себе позволить держать выделенного админа конкретной БД. Чтобы он досконально знал схему данных и бизнес-логику, заложенную в хранимках и триггерах.
We are hard at work… for you. 

Защита программы
Извиняюсь, если некорректно сформулировал данный вопрос (вопросом на вопрос) - имелось ввиду доступ системного администратора БД Sybase SQL Anywhere клиента (покупателя ПО).
По существующей специфике, на сколько я понимаю, у Вас, Kreator, работа организована таким образом что разработчик имеет монополию на администрирование БД Sybase SQL Anywhere.
В моём случае полные права на БД Sybase SQL Anywhere имеет администратор клиента (покупателя) и доступ к БД Sybase SQL Anywhere разработчику запрещён

Вот отсюда некоторое непонимание

Какие ещё могут быть идеи по ограничению работы приложения в случае полного администрирования БД Sybase SQL Anywhere системным администратором клиента и невозможностью доступа к этой БД Sybase SQL Anywhere разработчика?
Вот в чём отличие и суть вопроса

Менять правила игры?
Вся власть разработчику с правами администратора БД Sybase SQL Anywhere

С Уважением, Developer
-
- ✯ Ветеран ✯
- Сообщения: 5160
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Защита программы
Совсем доступ не может же быть запрещён? Через программные скрипты разрешён? Или структура БД полностью контролируется ими и стоит полный запрет на какое бы то ни было изменение? Допустим, нельзя добавить поле в таблицу, нельзя добавить хранимку и т.д. Или по-другому - что можно?Developer писал(а):В моём случае полные права на БД Sybase SQL Anywhere имеет администратор клиента (покупателя) и доступ к БД Sybase SQL Anywhere разработчику запрещён
We are hard at work… for you. 

Защита программы
Системные функции (модификация структуры, скрипты, хранимые процедуры) только из приложения разработчика - имеется ввиду нельзя использовать Sybase Central и аналогичные утилиты администрирования разработчику. Но база в полном распоряжении администратора клиента (покупателя). И запрещен доступ разработчику к содержимой информации на легальной основе.
С технической стороны разработчик волен с базой делать всё что необходимо, но запрещён доступ к содержимой информации базы - там главный есть администратор клиента а не разработчик.
А вот администратор клиента имеет все полные права на БД SQL Anywhere
С технической стороны разработчик волен с базой делать всё что необходимо, но запрещён доступ к содержимой информации базы - там главный есть администратор клиента а не разработчик.

А вот администратор клиента имеет все полные права на БД SQL Anywhere

С Уважением, Developer