USP_ENCRYPTEDFILE_ADD
Adds information about an encrypted file.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@FILEPATH | nvarchar(260) | IN | |
@AESINITIALIZATIONVECTOR | varbinary | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.USP_ENCRYPTEDFILE_ADD
(
@FILEPATH nvarchar(260),
@AESINITIALIZATIONVECTOR varbinary(16),
@CHANGEAGENTID uniqueidentifier = null
)
as
set nocount on
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
set @FILEPATH = rtrim(ltrim(lower(@FILEPATH)))
exec dbo.USP_GET_KEY_ACCESS
begin try
if not exists (select * from dbo.ENCRYPTEDFILE where rtrim(ltrim(lower(FILEPATH))) = @FILEPATH)
begin
insert into dbo.ENCRYPTEDFILE
(
FILEPATH,
AESINITIALIZATIONVECTOR,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
values
(
@FILEPATH,
EncryptByKey(key_GUID('sym_BBInfinity'), @AESINITIALIZATIONVECTOR),
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
)
end
else
begin
update dbo.ENCRYPTEDFILE set
AESINITIALIZATIONVECTOR = EncryptByKey(key_GUID('sym_BBInfinity'), @AESINITIALIZATIONVECTOR),
DATECHANGED = @CURRENTDATE,
CHANGEDBYID = @CHANGEAGENTID
where FILEPATH= @FILEPATH
end
close symmetric key sym_BBInfinity
end try
begin catch
close symmetric key sym_BBInfinity
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0