Не сбрасывается подпись с документа

  • Автор темы fvoice
  • Дата начала
Статус
Закрыто для дальнейших ответов.
F

fvoice

В событии PostSave пишу:
Код:
Call source.Document.Sign
Call source.Document.Save(True,False,True)

переоткрываю документ, внизу как положено надпись: "Подписан тем-то тогда-то.."

проверяю: делаю на форме кнопку:
Код:
Dim ws As New NotesUIWorkspace
Dim doc As NotesDocument

Set doc = ws.CurrentDocument.Document
doc.Field = "1"
Call doc.Save(True,False,True)
перезахожу, и вижу что значение поля поменялось, а подпись осталась :)
 
K

Kee_Keekkenen

а почему она должна исчезнуть ?
 
F

fvoice

А разве не должна?
Я считал что подпись это некая контрольная сумма, вычисляемая при подписи документа(NotesDocument, значит с формой не связана) и при изменении документа она должна изменяться... причем хоть через UI хоть через серверный NotesDocument..

Или я чегото недопонимаю? :blink:

Выходит что ли человек подписал документ, а злоумышленник :D может спокойненько скопировать документ с подписью, изменить в бэкграунде и штамповать документы с подписью этого человека?
 
F

fvoice

Example of signature verification
One of the following occurs:
-If the signature and data are verified, Notes displays a message indicating who signed it.
-If the data has been modified, Notes displays a message indicating that the document has been changed or corrupted since Mary saved it. David should not assume that the content of the document is what Mary created.
-If the signature can't be verified or David and Mary don't share a common certificate, Notes displays a message that the signature can't be verified. David should not assume that Mary created the document.
:D
 
K

Kee_Keekkenen

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

по простому 1. в постопен разрешать подписывать, если док не пописан
в кнопке, где происходит изменение сравнивать
Код:
If doc.Signer = ses.UserName Then
doc.Field = "1"
Call doc.Save(True,False,True)
End If
 
F

fvoice

Это опять же будет зависеть от формы, а из бэкграунда документ можно менять как хочешь...

Никакой управы на админа.. выходит :D
 
30.05.2006
1 345
12
BIT
0
В событии PostSave пишу:
Код:
Call source.Document.Sign
Call source.Document.Save(True,False,True)

переоткрываю документ, внизу как положено надпись: "Подписан тем-то тогда-то.."

проверяю: делаю на форме кнопку:
Код:
Dim ws As New NotesUIWorkspace
Dim doc As NotesDocument

Set doc = ws.CurrentDocument.Document
doc.Field = "1"
Call doc.Save(True,False,True)
перезахожу, и вижу что значение поля поменялось, а подпись осталась :D
1.Чем перезаходишь? Той-же формой? Знач. после правки ты-же и переподписал заново
2.Не той формой? А поле Field подписываемое? Если нет - то в хеш оно не входит, соотв. и подпись "не бьется"

А разве не должна?
Я считал что подпись это некая контрольная сумма, вычисляемая при подписи документа(NotesDocument, значит с формой не связана) и при изменении документа она должна изменяться... причем хоть через UI хоть через серверный NotesDocument..

1.Это "сумма" ПОДПИСЫВАЕМЫХ полей (SIGNED), а не всех. Ты это свойство установил?
2.Подпись вычисляется только той программой (формой), где это предусмотрено
3.Подпись проверяется только той программой, где это предусмотрено (в UI-формах - предусмотрено)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!