LINUX.ORG.RU

IBM Database Connectivity for JavaScript


0

0

В продолжение новости про "SQL сервер на JS" представляем IBM Database Connectivity for JavaScript(IBM DBCJS) - аналог JDBC для веб-приложений.

Это набор API функций, которые позволяют выполнять запросы к базе данных на сервере почти "напрямую". На стороне клиента IBM DBCJS состоит из набора API функций и библиотеки, которая может быть использована веб-приложениями напрямую, без использования каких либо дополнительных плагинов. На стороне сервера используется IBM DBCJS шлюз(gateway), написанный на PHP. Это промежуточный слой функций между IBM DBCJS и сервером баз данных, он также обеспечивает безопасность и перенаправление вызовов.

Пересказ статьи на русском - http://blog.webrule.ru/?p=7

>>> Подробности(англ.)



Проверено: ivlad ()

Re: IBM Database Connectivity for JavaScript

И как у этого дела с безопастностью?

Motiv_studenta ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от krum

Re: IBM Database Connectivity for JavaScript

А никак. Щас мода такая пихать логику на клиента. Жесть одним словом.

anonymous ()
Ответ на: Re: IBM Database Connectivity for JavaScript от Motiv_studenta

Re: IBM Database Connectivity for JavaScript

В первом предложении по ссылке: "... without compromising enterprise security ...". По ссылке читать лень, а каммент написать - не лень.

anonymous ()

Re: IBM Database Connectivity for JavaScript

>На стороне сервера используется IBM DBCJS шлюз(gateway), написанный на PHP. ... он также обеспечивает безопасность и перенаправление вызовов.

хмм...

Не, ну я понимаю: сайты там, форумы, магазины даже...

Но, php для обеспечения безопасности... это... это жездь...

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от grinn

Re: IBM Database Connectivity for JavaScript

> Но, php для обеспечения безопасности... это... это жездь...

а вы что предлагаете? Приведите пож-ста mainstream язык на котором следует писать такой шлюз, чтобы он был принципиально более безопасным чем php-реализация?

gods-little-toy ★★★ ()

Re: IBM Database Connectivity for JavaScript

Лет десять назад Netscape хотела переписать Navigator на Java. Не получилось.

Теперь вот мода пошла на Web 2.0 с убогим "наколеночным" JavaScript, который даже не компилируется, а интерпретируется... Десять лет придумывают разнообразные костыли. Ладно, раньше пэкашки были с быстродействием как сегодняшние КПК -- можно списать на то, что Яву и апплеты они не осиляли. Но сегодня-то в чём тормоза? В чём фикус НЕиспользования апплетов, а использования JavaScript'а на клиентах? Чтобы люди бесконца апгрейдили своё железо для XUL и иже с ним?

По второму кругу понеслась моча по трубам? :))

iZEN ★★★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

>> Но, php для обеспечения безопасности... это... это жездь...

>а вы что предлагаете? Приведите пож-ста mainstream язык на котором следует писать такой шлюз, чтобы он был принципиально более безопасным чем php-реализация?

Java.

iZEN ★★★★★ ()

Re: IBM Database Connectivity for JavaScript

Предлагаю начать сбор подписей под петицией об установлении сего на ЛОРе!

Администрация на все фичреквесты сможет отвечать "напиши сам" :-))

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от iZEN

Re: IBM Database Connectivity for JavaScript

> Теперь вот мода пошла на Web 2.0 с убогим "наколеночным" JavaScript, который даже не компилируется, а интерпретируется...

Зато исходники всего всегда всем доступны без всяких декомпиляторов. Что реально сосет в js - это совместимость между браузерами. Тут действительно до java как до луны.

> Но сегодня-то в чём тормоза? В чём фикус НЕиспользования апплетов, а использования JavaScript'а на клиентах? Чтобы люди бесконца апгрейдили своё железо для XUL и иже с ним?

Апплеты тормозят. Хз почему, но на странице, которая нетривиально использует апплет, все еле чешется. Если не согласны - предъявите pls что-то наподобие gmail на апплетах..

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от iZEN

Re: IBM Database Connectivity for JavaScript

> Java.

Пожалуй да, парсинг параметров java вынудит написать корректно. Еще может от атак с кавычками и sql injection спасет... Но как же писать-то долго... И еще на хостинге небось java не будет, придется ставить ее туда.

Вобщем да, безопасно но малопрактично. Проще на PHP сесть и написать таки безопасный скрипт.

gods-little-toy ★★★ ()

Re: IBM Database Connectivity for JavaScript

Если сходить по ссылке, то можно увидеть, что статья эта, как и сам набор скриптов, выложены на alphaworks.ibm.com, т.е. это такой "прототип", не энрерпрайз(как минимум пока) и надеюсь не станет никогда:)

О какой безопасности идет речь, если JS лежит открытым текстом в браузере и из него предлагается делать sql-запросы?! Разве что хранимые процедуры вызывать, но тогда необходимы весьма строгие проверки на стороне сервера...

А на чем написана серверная часть, не так уж важно, исходники открыты и, соответственно, переписать их для несогласных не составит труда хоть на java, хоть на python, да на чем угодно!

it-partizan ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

>> Но, php для обеспечения безопасности... это... это жездь...

>а вы что предлагаете? Приведите пож-ста mainstream язык на котором следует писать такой шлюз, чтобы он был принципиально более безопасным чем php-реализация?

c? Java? может быть, даже python?

я, как уже говорил, не против использования php в _его_ нише.

Но тут-то речь идет не просто о безопасности самого приложения, а о том, что это приложение является промежуточным слоем и "обеспечивает безопасность и перенаправление вызовов"!!!

имхо, для этого не очень подходит инструмент, в котором проблема безопасности сохраняется даже в случае написания безопасного кода (вспоминаем проблемы с htmlspecialchars()).

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: sql injection

Кста. Сорри что не втему но просто ооочень нужно.

sql injection - только ли фикс кавычек спасет от сабжа? мот посоветует кто статейку или набор правил?

anonymous ()
Ответ на: Re: IBM Database Connectivity for JavaScript от it-partizan

Re: IBM Database Connectivity for JavaScript

>Если сходить по ссылке, то можно увидеть, что статья эта, как и сам набор скриптов, выложены на alphaworks.ibm.com, т.е. это такой "прототип",

А если этот тезис отразить в тексте новости, то флейма не будет, да?

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от grinn

Re: IBM Database Connectivity for JavaScript

>>Если сходить по ссылке, то можно увидеть, что статья эта, как и сам набор скриптов, выложены на alphaworks.ibm.com, т.е. это такой "прототип",

> А если этот тезис отразить в тексте новости, то флейма не будет, да?

Согласен, как-то забыл про "каноны ЛОРа", по ссылкам ходить ведь не принято:)

В следующий раз буду внимательнее

it-partizan ()
Ответ на: Re: sql injection от anonymous

Re: sql injection

> только ли фикс кавычек спасет от сабжа?

Не только.

Для начала можешь почитать тут: http://www.whatis.ru/razn/razn13.shtml

Ну а потом гугл тебе в руки, это реально быстрее/лучшее чем спрашивать здесь, да и узнаешь больше

it-partizan ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

>Предлагаю начать сбор подписей под петицией об установлении сего на ЛОРе!

Не. Предлагаю еще проще. Обработать вот такой POST ведь не сложно

http://www.linux.org.ru/exec?sql=bla-bla-bla-bla-bla

vada ★★★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от vada

Re: IBM Database Connectivity for JavaScript

> Не. Предлагаю еще проще. Обработать вот такой POST ведь не сложно

> http://www.linux.org.ru/exec?sql=bla-bla-bla-bla-bla

А ведь он дело говорит! И не надо ни с какими JS-скриптами парится и никаких промежуточных слоев на php/java не понадобится:)

it-partizan ()

Re: IBM Database Connectivity for JavaScript

Совсем лажу ИБМ гнать стала. Видать, плохо "Веб Сфера" продается.

Зачем нужно это поделие, если есть нормальные решения на основе трехзвенной архитектуры. Все так и ринутся изучать "IBM DBCJS шлюз(gateway), написанный на PHP"?

Bioreactor ★★★★★ ()
Ответ на: Re: sql injection от it-partizan

Re: sql injection

Насколько я понимаю, prepare/bind вместо символьной подстановки спасает от sql injection.

anonymous ()
Ответ на: Re: sql injection от anonymous

Re: sql injection

Причём на 100%. Более того, символьная подстановка на 100% гарантирует наличие ошибок.

Xellos ★★★★★ ()

Re: IBM Database Connectivity for JavaScript

Что только люди не делают что бы не пользоваться Styx (P92000) :)

robot12 ★★★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от Bioreactor

Re: IBM Database Connectivity for JavaScript

> Зачем нужно это поделие, если есть нормальные решения на основе трехзвенной архитектуры

Ниче вы не понимаити. У всех этих ваших решений-на-трехзвенной-архитектуре уровень интерфейса как у проводника в windows. Power-user'ство или невозможно или какой-то секс с wget'ом и перлом.

А вот начнут публиковать доступ к базе, сразу получше станет - можно будет единым интерфейсом таскать информацию с кучи сайтов и в броузере делать под себя обработку. А там глядишь и броузеры поприличнее сделают - чтоб не возить мышой как в винде а сразу писать чё надо как в zsh.

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

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

>Ниче вы не понимаити. У всех этих ваших решений-на-трехзвенной-архитектуре уровень интерфейса как у проводника в windows.

>А вот начнут публиковать доступ к базе, сразу получше станет - можно будет единым интерфейсом таскать информацию с кучи сайтов и в броузере делать под себя обработку

А вот скажи, ты и впямь считаешь, что "трехзвенку" придумали исключительно в целях утилизации излишней вычислительной мощности путем обогрева помещения?

Или же это тонкий стеб?

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от grinn

Re: IBM Database Connectivity for JavaScript

> А вот скажи, ты и впямь считаешь, что "трехзвенку" придумали исключительно в целях утилизации излишней вычислительной мощности путем обогрева помещения?

Думаю, что придумавшие ее такой цели не ставили. Хотя фиг их знает, все эти методологи странные люди какие-то.

В любом случае, никакая архитектура - не библия. Если какие-то звенья стали лишними (presentation - первый на вылет), их надо без колебаний убрать.

Гы, представьте лет через 100, экскурсия. "Уважаемые господа, мы заходим на linux.org.ru. Сайт является памятником трехзвенной архитектуры начала 21го века. Обратите внимание на отсутствие доступа к базе данных. Это не баг, в ту эпоху это было типичным средством обеспечения безопасности" :-)

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

>В любом случае, никакая архитектура - не библия. Если какие-то звенья стали лишними (presentation - первый на вылет), их надо без колебаний убрать.

оно, конечно да, не догма. и вообще, это полезно - посмотреть на проблему свежим взглядом...

Вопрос только в том, почему это вдруг, нечто стало "лишним"? А может, это не оно лишним стало, а условия задачи поменялись?

>Обратите внимание на отсутствие доступа к базе данных. Это не баг, в ту эпоху это было типичным средством обеспечения безопасности" :-)

А вот тут согласиться не могу. По пунктам:

1. Отсутствие прямого доступа к БД решает отнюдь не задачу обеспечения безопасности.

2. Прямой доступ к БД - полумера! Даешь доступ к регистрам непосредственно из браузера!

"Обратите внимание на отсутствие тумблеров и лампочек. Нет, их не сприватизировали. В то время пользователи управляли компьютером с помщью клавиатуры и мыши". :)

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от grinn

Re: IBM Database Connectivity for JavaScript

> 1. Отсутствие прямого доступа к БД решает отнюдь не задачу обеспечения безопасности.

А что еще мешает открыть доступ к БД ЛОРа?

> 2. Прямой доступ к БД - полумера! Даешь доступ к регистрам непосредственно из браузера!

Не в кассу. Большинство сайтов - по сути web-морды к базам данных. Вот про базу лора ессесснным образом все спрашивают. Про регистры ЛОРа запросов не было.

> "Обратите внимание на отсутствие тумблеров и лампочек. Нет, их не сприватизировали. В то время пользователи управляли компьютером с помщью клавиатуры и мыши".

Мой пример был про будущее, а не про прошлое. Хорошо, вот про прошлое:

"Представляете, в 21м веке, приходишь в ВЦ, а там секретарши на входе нет! Кому, спрашивается отдавать рукопись программы чтоб загнали в машину? Приходится идти в машинный зал самому. Нет, без всякой предварительной записи. Санкции особого отдела тоже не надо. Машины стоят сами по себе, техников нет. Приходится самому лезть и нажимать кнопки. Работаешь так сказать непосредственно, кто бы мог подумать"

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от it-partizan

Re: IBM Database Connectivity for JavaScript

>> http://www.linux.org.ru/exec?sql=bla-bla-bla-bla-bla
> А ведь он дело говорит! И не надо ни с какими JS-скриптами парится и никаких промежуточных слоев на php/java не понадобится:)

Хочу читать ЛОР через postgesql-client ;)

Lumi ★★★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

>> 1. Отсутствие прямого доступа к БД решает отнюдь не задачу обеспечения безопасности.

> А что еще мешает открыть доступ к БД ЛОРа?

эээ... скажу банальность: "анахуа?"

>> 2. Прямой доступ к БД - полумера! Даешь доступ к регистрам непосредственно из браузера!

>Не в кассу. Большинство сайтов - по сути web-морды к базам данных.

еще как в кассу! "Большинство программ - по сути морды к регистрам проца и к памяти"

>Вот про базу лора ессесснным образом все спрашивают. Про регистры ЛОРа запросов не было.

имхо, это _противо_естественное желание - получить доступ к БД, обслуживающей форум.

В общем-то пользователю нужна именно "морда", которая позволит ему решить такие задачи как "читать сообщение" и "отправить сообщение" не прибегая к их приведения в форму sql-запросов (обращения к ФС).

ps: а где у ЛОРа регистры? ;)

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от grinn

Re: IBM Database Connectivity for JavaScript

> еще как в кассу! "Большинство программ - по сути морды к регистрам проца и к памяти"

Неверно, смотрите:

> ps: а где у ЛОРа регистры? ;)

Вот! Вопроса "где у ЛОРа база" не возникает! Есть в ЛОРе список новостей, к каждой есть комментарии, и есть юзеры => есть база! Каждый анонимус может примерную схему нарисовать. А какие там на ЛОРовской машине регистры проца да памяти, никто и не знает. Неужели не видите разницы?

> имхо, это _противо_естественное желание - получить доступ к БД, обслуживающей форум.

Абсолютно естественное.

- Задрало уже бегать смотреть ответили ли мне в теме X, хочу список ответов.

- Хочу иметь список интересных тем (на лоре не дают, положу на другой сервер, в googlebase хотяб), и отслеживать там посты (берем недавно упомянутый javascript SQL server, цепляем ЛОР и googlebase как таблицы, делаем join)

- Топик является деревом постов, хочу оное визуализировать.

это только что прям щас пришло в голову. Противоестественно - это как раз то что сейчас - сидеть в той форме которую для меня придумали и ни шагу в сторону. Не труъ.

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от Lumi

Re: IBM Database Connectivity for JavaScript

>Хочу читать ЛОР через postgesql-client ;)

SELCT * FROM NEWS ? :) Лучше уж cat /mnt/lor/news/*/text :)

robot12 ★★★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

>Неверно, смотрите:

че-то ниасилил... где неверно? почему неверно?

>> ps: а где у ЛОРа регистры? ;)

>Вот! Вопроса "где у ЛОРа база" не возникает!

угу. Но лишь потому, что "ЛОР" - это более высокий уровень абстракции, чем регистры/память.

>Абсолютно естественное.

[список убран]

>Противоестественно - это как раз то что сейчас - сидеть в той форме которую для меня придумали и ни шагу в сторону. Не труъ.

ну так попроси у Макскома структуру БД и напиши ЛОР так, как видишь его ты. в чем проблема-то?

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от grinn

Re: IBM Database Connectivity for JavaScript

> ну так попроси у Макскома структуру БД и напиши ЛОР так, как видишь его ты. в чем проблема-то?

И что с ним, написав, делать? Поставить на локальной машине и сидеть там одному??

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от grinn

Re: IBM Database Connectivity for JavaScript

> >Неверно, смотрите:

> че-то ниасилил... где неверно? почему неверно?

На концептуальном уровне под ЛОРом есть база. Мы ее себе представляем когда по нему ходим, без нее - никак.

А вот регистров у ЛОРа нет. Его можно вообще теоретически на машине без регистров и/или линейной памяти выполнять. У пользователя сайта, мозг которого не поврежден изучением ассемблера, мыслей о регистрах машины хостящей ЛОР не возникает.

Если снова ниасилили вот упражнение

1. подумайте какая может быть база у лора (легко догадаться)

2. подумайте какие могут быть CPU(s) у машин(ы) лора (ничего сказать нельзя)

и сравните

gods-little-toy ★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

вообще идея неплохая, пугает другое - реализация и выбранные "языки"

А вообще да, лор достаточно специфичный ресурс, тут действительно было бы супер если бы дали возможность морду самому строить :)

Не, можно конечно пойти в обход и написать на перле клиента, который будет шарить по страничкам и собирать тебе нужное, а потом выдавать это все в удобоваримом виде... Но .. Сам концепт то идеи топега какой :)

anonizmus ()

Re: IBM Database Connectivity for JavaScript

А кстати действительно не ясно зачем это нафиг нужно если есть (XML-RPC, SOAP). Думаю это типа постпервоапрельский синдром. Кто то не переставил красный квадратик на настольном календарике.

Вообще если уволить все программистов интерфейсов (и околонихтусующихся), то вполне хватит бабок на тотальное изучение SQL бухгалтерами, секретаршами и околонихтусующихся. Включая руководство предприятий.

maxik73 ()

Re: IBM Database Connectivity for JavaScript

>SQL сервер на JS

Како ужос! Зачем вы такое на ночь печатаете? :)

anonymous ()
Ответ на: Re: IBM Database Connectivity for JavaScript от maxik73

Re: IBM Database Connectivity for JavaScript

>Вообще если уволить все программистов интерфейсов (и околонихтусующихся), то вполне хватит бабок на тотальное изучение SQL бухгалтерами, секретаршами и околонихтусующихся. Включая руководство предприятий.

Ха... Наверное ты бухов и менеджеров никогда не учил. Подход который ты предложил - АСУ времен 70-х. Только там бухов и менеджеров заменяли ведущие инженеры-программисты закончившие вузы высшей степени акредитации, которые занимались не программированием, а вводом данных, и рашифровкой вывода.

anonymous_pro ()
Ответ на: Re: IBM Database Connectivity for JavaScript от anonymous_pro

Re: IBM Database Connectivity for JavaScript

>Ха... Наверное ты бухов и менеджеров никогда не учил. Подход который ты предложил - АСУ времен 70-х. Только там бухов и менеджеров заменяли ведущие инженеры-программисты закончившие вузы высшей степени акредитации, которые занимались не программированием, а вводом данных, и рашифровкой вывода.

А что у профессиональных анонимусов стоит спам фильтр на юмор?

maxik73 ()
Ответ на: Re: IBM Database Connectivity for JavaScript от maxik73

Re: IBM Database Connectivity for JavaScript

>А что у профессиональных анонимусов стоит спам фильтр на юмор

Там же стоит 'Ха..', это я смеюсь.

anonymous_pro ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

XM.. если твой мозг не повреждён изучением SQL - скажи, какая может быть база у лора?

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

Ты говоришь о базе лора лишь потому что тебе привычно думать в терминах SQL... моё скромное мнение..

AndreyKl ★★★★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от AndreyKl

Re: IBM Database Connectivity for JavaScript

А если еще поднапрячься, то можно представить что вообще есть ли бызы, нету базы, пофиг. Какая разница, используете выязык запросов, или написали свои процедуры по поиску в текстовых файлах. Суть то одна, доступ к данным.

Но кажется у ЛОРа есть SQL база. Как ты вывалилась ошибка доступа к оной. А какая конкретно не помню.

maxik73 ()
Ответ на: Re: IBM Database Connectivity for JavaScript от gods-little-toy

Re: IBM Database Connectivity for JavaScript

> А вот регистров у ЛОРа нет. Его можно вообще теоретически на машине без регистров и/или линейной памяти выполнять. У пользователя сайта, мозг которого не поврежден изучением ассемблера, мыслей о регистрах машины хостящей ЛОР не возникает.

>Если снова ниасилили вот упражнение

что ты пытаешься мне доказать? Что одна абстракция безусловно круче другой? А ты сам-то способен в это поверить?

А вот БД у ЛОРа нет. Его можно вообще теоретически на машине без БД и/или ФС выполнять. У пользователя сайта, мозг которого не поврежден изучением SQL и операциями над файлами, мыслей о БД/ФС машины хостящей ЛОР не возникает.

Если снова ниасилил вот упражнение

1. прочитать статью http://ru.wikipedia.org/wiki/Структурное_программирование

2. понять, за каким хером понадобилось городить целый огород "лишних сущностей".

grinn ★★ ()
Ответ на: Re: IBM Database Connectivity for JavaScript от maxik73

Re: IBM Database Connectivity for JavaScript

>Вообще если уволить все программистов интерфейсов (и околонихтусующихся), то вполне хватит бабок на тотальное изучение SQL бухгалтерами, секретаршами и околонихтусующихся. Включая руководство предприятий.

Ну вот! опять предлагаются полумеры!

Надо повести "тотальную зачистку" и уволить вообще всех пограммистов (и околонихтусующихся)!

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

ps: это шуткаюмора такая, если кто не понял

grinn ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.