CONTENTS DELETED
The author has deleted this message.
|
In reply to this post by Sr Visor
Безопасность у Smalltalk низкая.
Достаточно в workspace выполнить Smalltalk at: #Object put: nil. Любое изменение классов может привести к краху системы. Приходится периодически сохранять образ. Доступ к переменным через сообщение Object>>instVarAt:anIndex не добавляет безопасности. Такой же доступ к индексированным переменным Object>>basicAt:anIndex. Объекты взаимодействуют не только через сообщения, но и другими способами. (в целях повышеня быстродействия). Низкая защищенность образа является, по моему, одной из причин трудной реализации распределенных систем. Возможные способы повышения защищенности Smalltalk: - включение/отключение ограниченного протокола у объекта - ограничение доступа к классам - взаимодействие объектов только через сообщения (больше подходит для распределенных систем) - для "внешнего мира" предоставлять доступ только к ограниченному количеству объектов, которые защищены т.е. ограниченный протокол, нет доступа к классам. Smalltalk объекты хорошо приспособлены для "жизни" внутри системы, а для внешнего использования все в точности до наоборот. 2 марта 2012 г. 11:51 пользователь Sr Visor <[hidden email]> написал: Приветствую всех увлекающихся Smalltalk ! -- http://groups.google.ru/group/sugr |
In reply to this post by Sr Visor
Зная изначальную мотивировку вопрошавшего, вижу, что дискуссия пошла совсем не по тому руслу.
Вот чуть (именно чуть) более конкретный вопрос: Я хочу сделать систему, где будет несколько пользователей с различными правами. При этом для части пользователей хотелось бы оставить только возможность работать через UI, для другой — ограниченные возможности по разработке "во внутренностях", для третьих — вообще неограниченные. Можно ли это сделать? Какие могут возникнуть проблемы? Более конкретные вопросы не задаю умышленно…
On Friday, 2 March 2012 г. at 9:51, Sr Visor wrote:
http://groups.google.ru/group/sugr |
In reply to this post by Nikolay Kleptsov
Топикстартер написал - "расскажите мне то, не знаю что". На такое вообще никак не стоит реагировать.
Но "Объекты взаимодействуют не только через сообщения, но и другими способами. (в целях повышеня быстродействия)" - это что за новости? Это вы про инлайнинг вещей типа isNil и ifTrue:, что ли? Но как это соотносится с не знаю чем (названному "безопасностью") и распределёнными системами? А про GemStone/S вы что-нибудь слышали? On Saturday, March 3, 2012 3:10:38 PM UTC+6, Kleptsov Nikolay wrote: Безопасность у Smalltalk низкая. -- http://groups.google.ru/group/sugr |
In reply to this post by Dennis Schetinin
Полагаю, общий ответ будет - делайте, никто не возражает и не против, проблемы могут возникнуть любые, но ясновидящих и телепатов нет.
On Saturday, March 3, 2012 11:36:39 PM UTC+6, chaetal wrote: -- http://groups.google.ru/group/sugr |
In reply to this post by Dennis Schetinin
CONTENTS DELETED
The author has deleted this message.
|
Для "безопасности" надо запускать разные имиджи для разных юзеров (причём хорошо было бы, чтобы для VM можно было определить "песочницу").
А вы в курсе, что есть такая GemStone/S (причём её ограниченная версия даже раздаётся нахаляву)? On Saturday, March 3, 2012 11:52:07 PM UTC+6, Владимир Мусулайнен wrote: Предположим, что речь идет об образе с средствами разработки и |
In reply to this post by vvm13xyz xyz
Но "Объекты взаимодействуют не только через сообщения, но и другими способами. (в целях повышеня быстродействия)" - это что за новости? Это вы про инлайнинг вещей типа isNil и ifTrue:, что ли? В действительности только верхушка объекта взаимодействует через сообщения, остальная же часть через ВМ. (справедливо для большинства объектов) Например арифметика чисел, сравнение. Но как это соотносится с не знаю чем (названному "безопасностью") и распределёнными системами? Незащищенность объектов не позволяет предоставлять доступ вне образа. -- http://groups.google.ru/group/sugr |
In reply to this post by vvm13xyz xyz
4 марта 2012 г. 0:22 пользователь Victor Metelitsa <[hidden email]> написал: Для "безопасности" надо запускать разные имиджи для разных юзеров (причём хорошо было бы, чтобы для VM можно было определить "песочницу"). Надо будет посмотреть GemStone/S, никогда не использовал. Как эти образы будут взаимодействовать между собой? -- http://groups.google.ru/group/sugr |
In reply to this post by Dennis Schetinin
Я все-таки думаю, что такое разделение сильно усложнить систему, и на быстродействии скажется не в лучшую сторону. Придется "перелопатить" всю систему. Перспективней было бы выделить ("расшарить") ограниченное количество защищенных объектов, для совместного использования. http://groups.google.ru/group/sugr |
In reply to this post by Nikolay Kleptsov
2012/3/3 Nikolay Kleptsov <[hidden email]>:
> Безопасность у Smalltalk низкая. > Достаточно в workspace выполнить Smalltalk at: #Object put: nil. > Любое изменение классов может привести к краху системы. Приходится > периодически сохранять образ. > Доступ к переменным через сообщение Object>>instVarAt:anIndex не добавляет > безопасности. > Такой же доступ к индексированным переменным Object>>basicAt:anIndex. > Объекты взаимодействуют не только через сообщения, но и другими способами. > (в целях повышеня быстродействия). Низкая защищенность образа является, по > моему, одной из причин трудной реализации распределенных систем. > > Возможные способы повышения защищенности Smalltalk: > - включение/отключение ограниченного протокола у объекта > - ограничение доступа к классам > - взаимодействие объектов только через сообщения (больше подходит для > распределенных систем) > - для "внешнего мира" предоставлять доступ только к ограниченному количеству > объектов, которые защищены т.е. ограниченный протокол, нет доступа к > классам. > > Smalltalk объекты хорошо приспособлены для "жизни" внутри системы, а для > внешнего использования все в точности до наоборот. > Возьмем Си, Си++. Прямая работа с памятью. Любой указатель небезопасен. Передача указателя куда-либо может повлести к последствиям как-то чтение засекреченных данных либо несансционированная запись, что приведет к взлому системы. Теперь вопрос для знатоков: а мешает ли это писать безопасные приложения на этих языках? Я думаю ответ на поверхности. > 2 марта 2012 г. 11:51 пользователь Sr Visor <[hidden email]> написал: > >> Приветствую всех увлекающихся Smalltalk ! >> Поделитесь, пожалуйста, своими мыслями на тему: какие проблемы >> безопасности Вы видите в Smalltalk ? >> Спасибо. >> >> -- >> http://groups.google.ru/group/sugr > > > -- > http://groups.google.ru/group/sugr -- Best regards, Igor Stasenko. -- http://groups.google.ru/group/sugr |
In reply to this post by Nikolay Kleptsov
2012/3/3 Nikolay Kleptsov <[hidden email]>:
>> >> Вот чуть (именно чуть) более конкретный вопрос: Я хочу сделать систему, >> где будет несколько пользователей с различными правами. При этом для части >> пользователей хотелось бы оставить только возможность работать через UI, для >> другой -- ограниченные возможности по разработке "во внутренностях", для >> третьих -- вообще неограниченные. Можно ли это сделать? Какие могут >> возникнуть проблемы? > > > Я все-таки думаю, что такое разделение сильно усложнить систему, и на > быстродействии скажется не в лучшую сторону. Придется "перелопатить" всю > систему. Перспективней было бы выделить ("расшарить") ограниченное > количество защищенных объектов, для совместного использования. > Любая безопасность начинается с ограничения точек входа и контроля над оставшимися. Примеры из реальной жизни: аэропорт, склад, военная база етц. Не вижу абсолютно никаких препятсвий реализации таких моделей в смаллтолке. Просто люди какие-то странные, считают что язык программирования должен уметь что-то большее чем служить для написания программ. > -- > http://groups.google.ru/group/sugr -- Best regards, Igor Stasenko. -- http://groups.google.ru/group/sugr |
In reply to this post by vmusulainen-2
Надо запретить посылать определенные сообщения определенным объектам. По условиям задачи, пользователь имеет доступ к среде. Попробую сузить задачу: надо сделать так, чтобы пользователь мог узнать, сколько будет 2 + 2, а сколько будет 2 * 2 — нет. Best regards, Dennis Schetinin Sent with Sparrow On Saturday, 3 March 2012 г. at 21:52, Владимир Мусулайнен wrote:
http://groups.google.ru/group/sugr |
In reply to this post by Igor Stasenko
У C(++) нет среды. Поэтому все всегда делается через кастомный UI. Возможность использовать среду Smalltalk для того, чтобы дать возможность пользователям практически как угодно "перекраивать" приложение под себя, на мой взгляд, является огромным плюсом. Можно ли разграничить доступ, оставаясь в рамках среды Smalltalk? Возможно, я беспросветно туп и не вижу "банального" — раскройте мне глаза.
…И в порядке бреда: имеет ли смысл добавить в контекст вызова некий идентификатор пользователя и (возможно, на уровне виртуалки) запретить получение сообщений при нехватке прав на их посылку?
On Sunday, 4 March 2012 г. at 6:16, Igor Stasenko wrote:
http://groups.google.ru/group/sugr |
In reply to this post by vmusulainen-2
On Saturday, 3 March 2012 г. at 21:52, Владимир Мусулайнен wrote:
Еще один use case: Smalltalk в качестве операционной системы. Как здесь разграничить возможности пользователей?
http://groups.google.ru/group/sugr |
Надо посмотреть как в жемстоуне работают права пользователей, ибо там они есть как и в любой другой базе данных
4 марта 2012 г. 11:03 пользователь Dennis Schetinin <[hidden email]> написал:
-- http://groups.google.ru/group/sugr |
In reply to this post by Igor Stasenko
Да к чему эти детали? Писать безопасные приложения не мешает. Только в таком случае Smalltalk используется как язык программирования, основа для приложений. Объекты становятся скрытыми за приложением. Прямого доступа к ним нет. http://groups.google.ru/group/sugr |
In reply to this post by Igor Stasenko
Контроль точек ничего не сделает. С любого объекта можно послать сообщение, которое приведет к краху системы. Поэтому косвенный доступ к объектам реализован через приложения, которые и обеспечивают необходимый уровень безопасности. http://groups.google.ru/group/sugr |
In reply to this post by Dennis Schetinin
2012/3/4 Dennis Schetinin <[hidden email]>:
> У C(++) нет среды. Поэтому все всегда делается через кастомный UI. > Возможность использовать среду Smalltalk для того, чтобы дать возможность > пользователям практически как угодно "перекраивать" приложение под себя, на > мой взгляд, является огромным плюсом. Можно ли разграничить доступ, > оставаясь в рамках среды Smalltalk? Возможно, я беспросветно туп и не вижу > "банального" -- раскройте мне глаза. > да, конечно хочется чтоб все у нас было, но нам за это ничего не было :) в других языках вообще речь не идет о среде, и ниче, справляются. я бы сначала спросил, а кто потенциальный пользователь вашей системы. если это программист, то закрывая ему доступ вы только делаете ему медвежью услугу. если же это пользователь рода "а где на клавиатуре any key?" то не вижу смысла вообще открывать ему доступ к среде. только напугаете человека, а толку все-равно не будет. > ...И в порядке бреда: имеет ли смысл добавить в контекст вызова некий > идентификатор пользователя и (возможно, на уровне виртуалки) запретить > получение сообщений при нехватке прав на их посылку? > на таком низком уровне? имхо, это не сделает систему более безопасной. пути взлома сведутся к банальному поиску нужного идентификатора. > > Best regards, > Dennis Schetinin > Sent with Sparrow -- Best regards, Igor Stasenko. -- http://groups.google.ru/group/sugr |
In reply to this post by Nikolay Kleptsov
2012/3/4 Nikolay Kleptsov <[hidden email]>:
> >> > >> Все настолько банально, что даже лень писать. >> Любая безопасность начинается с ограничения точек входа и контроля над >> оставшимися. >> Примеры из реальной жизни: аэропорт, склад, военная база етц. >> Не вижу абсолютно никаких препятсвий реализации таких моделей в >> смаллтолке. >> Просто люди какие-то странные, считают что язык программирования >> должен уметь что-то большее чем >> служить для написания программ. >> > > Контроль точек ничего не сделает. С любого объекта можно послать сообщение, > которое приведет к краху системы. а кто говорил что будет дано такое право? абсолютно согласен что приведет к краху. но не согласен с тем , что контроль точек ничего дает. просто надо выбирать нужные точки. > Поэтому косвенный доступ к объектам > реализован через приложения, которые и обеспечивают необходимый уровень > безопасности. > Так то что вы описуете и есть контроль точек. > -- > http://groups.google.ru/group/sugr -- Best regards, Igor Stasenko. -- http://groups.google.ru/group/sugr |
Free forum by Nabble | Edit this page |