powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / ORM + Web services?
24 сообщений из 24, страница 1 из 1
ORM + Web services?
    #35490877
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем,

У кого нибудь есть удачный опыт по обьединению NHibernate и Web Services или WCF. Вроде читал, что если пересылать бизнес-обьекты напрямую клиенту то возникают проблемы. В частности при попытке сериализовать related обьектов получим exception (IList не сериализуется).

Может посоветуете более web service friendly ORM технологию. Хотелось бы иметь возможность передавать бизнес обьекты из веб сервиса клиенту, изменять/добавлять обьекты передавая их с клиента веб сервесу.

Спасибо.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35491009
xeonet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня получалось.
Я прикручивал nhibernate и WCF 3.5
И всё работало.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35491059
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всё нормально сериализуется и передаётся. сеть завалена примерами. в случае с ORM клиенту должны быть известны классы, которые вы хотите передавать.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35491346
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ok. Понятно, спасибо. Попробую поиграться.

А как насчет шифрования? Есть ли в какой либо ORM поддержка шифрования некоторых полей обьекта?

Поясню. Необходимо сделать так чтобы в БД данные хранились в зашифрованном виде, а на уровне свойств обьекта расшифрованном. Причем это должно быть реализовано прозрачно на уровне ORM. Например с помощью атрибута пометить свойство которое должно быть зашифровано, а движок ORM все сделает сам:

class Person
{

[Encrypted]
public string FirstName
{
get; set;
}

}

Кто нибудь встречал что нить такое?
...
Рейтинг: 0 / 0
ORM + Web services?
    #35491450
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот здесь пример использования WCF с Linq-ом
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492386
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А по поводу encryption посоветуйте, есть ли в какой либо ORM реализация прозрачной шифрации/дешифрации?
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492408
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
к чему они там? Если у вас Web services юзайте https.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492473
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buredк чему они там? Если у вас Web services юзайте https.

Мне надо защитить данные пока они храняться в БД. Причем в несколько параноидальном стиле: данные будут закодированы ключем-паролем пользователя. То есть данные будут доступны только пользователю создавшему их и никому другому, в том числе разработчику или DB admin'у. Пароль не хранится в БД! Да несколько параноидально, но так надо!

Так как насчет encryption на уровне ORM?
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492496
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikulinТак как насчет encryption на уровне ORM?
Если про Хибернейт разговор -- то смотри в сторону IUserType, например.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492661
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НахлобучЕсли про Хибернейт разговор -- то смотри в сторону IUserType, например.

То есть мне надо свой тип определить? Что то типа EncryptedString и реализовать методы IUserType?

class EncryptedString : IUserType
{
}
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492668
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikulinТо есть мне надо свой тип определить? Что то типа EncryptedString и реализовать методы IUserType?
Ну да, это будет самый простой способ.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492683
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы должны осознавать, что если пользователь забудет пароль, то данные будут утеряны.

А они обязательно начнут писать "Ой, я забыла пароль, помогите вспомнить"
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492687
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нахлобуч NikulinТо есть мне надо свой тип определить? Что то типа EncryptedString и реализовать методы IUserType?
Ну да, это будет самый простой способ.

То есть класс будет такой например:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
class Person
{

public EncryptedString FirstName
{
get; set;
}

public EncryptedString LastName
{
get; set;
}

}

А если я потом буду возвращать entity Person как результат вызова WCF метода, то во что превратиться EncryptedString тип на стороне клиента?
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492699
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buredВы должны осознавать, что если пользователь забудет пароль, то данные будут утеряны.

А они обязательно начнут писать "Ой, я забыла пароль, помогите вспомнить"

Знаю, но в том то и фишка что пользователь сам в ответе за свои данные и никто не имеет доступа к ним!
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492700
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что будете передавать, в то и превратится. ;)
расшифровывать надо там же где и зашифровывать. По soap вы будете передавать незашифрованные данные. таким образом вся ваша система - ерунда.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492716
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buredчто будете передавать, в то и превратится. ;)
расшифровывать надо там же где и зашифровывать. По soap вы будете передавать незашифрованные данные. таким образом вся ваша система - ерунда.

1. Все не настолько секретно чтобы кому то надо было перехватывать данные. Это не доступно простому пользователю. Пользователя главное уверить что данные в польной безопасности на сервере! А для этого главное исключить возможность слива данных на стороне сервера простым - select * from table.

2. А как же насчет SSL? Его разве не прикрутить к WCF?
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492730
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nikulin
2. А как же насчет SSL? Его разве не прикрутить к WCF?

можно конечно. я вам сразу про это и говорил.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492745
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bured
можно конечно. я вам сразу про это и говорил.

Ну так в итоге получается, что данные в безопасности как на этапе передачи от сервера к клиенту, так и на сервере БД.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492756
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buredчто будете передавать, в то и превратится. ;)


Так все-таки. Как класс свойства класса Person будут переопределены на клиенте? Будет ли у свойсв FirstName, LastName тип string или что?

Просто попробовать не могу так как NHibernate не установлен, да и не работал я ним вообще...
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492780
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikulinТо есть класс будет такой например:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
class Person
{

public EncryptedString FirstName
{
get; set;
}

public EncryptedString LastName
{
get; set;
}

}

Нет, везде будет String, а не EncryptedString.
Nikulin
А если я потом буду возвращать entity Person как результат вызова WCF метода, то во что превратиться EncryptedString тип на стороне клиента?
Ты уже определись -- то тебе "на уровне свойств обьекта расшифрованном. Причем это должно быть реализовано прозрачно на уровне ORM", то EncryptedString в свойствах появляется.
NikulinПросто попробовать не могу так как NHibernate не установлен, да и не работал я ним вообще...
Далось оно тебе, шифрование это. Да и с Хибером вот так просто "сел и поехал" не выйдет.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492781
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По SOAP в любом случае передаётся строка. Потом уже приводите её к какому-хотите типу. Грамотнее скрывать от клиента (с смысле SOA) логику доступа к данным и передавать просто String.
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492805
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нахлобуч...
Ты уже определись -- то тебе "на уровне свойств обьекта расшифрованном. Причем это должно быть реализовано прозрачно на уровне ORM", то EncryptedString в свойствах появляется.

Да точно, перемудрил что-то я.

То есть свойства обьекта будут просто string, а где указывается что они должны быть зашифрованы?

Нахлобуч...
Да и с Хибером вот так просто "сел и поехал" не выйдет.

А что за сложности например?
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492857
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikulinТо есть свойства обьекта будут просто string, а где указывается что они должны быть зашифрованы?
В файлах маппинга.
NikulinА что за сложности например?
Надо прочесть и осознать Hibernate in Action и это .
...
Рейтинг: 0 / 0
ORM + Web services?
    #35492865
Фотография Nikulin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок. Спасибо
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / ORM + Web services?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]