Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr
  • 0

Rest DataSnap Application에서 TDSAuthenticationManager 권한 체크에서 이상한 점 발견


질문있어요

질문

Rest DataSnap Application 작성 시 TAuthenticationManager 권한(role) 체크를 다음과 같이 사용합니다. 이전 버전에서도 동일하게 사용했습니다. 

procedure TWebModule1.DSAuthenticationManager1UserAuthenticate(
  Sender: TObject; const Protocol, Context, User, Password: string;
  var valid: Boolean; UserRoles: TStrings);
begin
  if (User = 'DELPHI') and (Password = 'DELPHI') then
     UserRoles.Add('Admin')
  else
     UserRoles.Add('Guest');
end;

그리고 첨부 이미지와 같이 EchoString 함수에 Admin의 권한만 접근 할 수 있도록 했습니다. 그런데 적용이 되지 않습니다. 또 아래 코드와 같이 코드로도 구현해 보았습니다. 

결과는 동일합니다. 다른 루틴을 추가해서 해보아도 결과는 동일합니다. 그런데 이상한 점은 ReverseString에는 잘 적용 됩니다. 

 참고로 이전 버전에서는 잘 동작 되었습니다. 또 하나 일반 DataSnap 서버에서는 모든 루틴에  다 잘 적용됩니다. 

 type
  TServerMethods1 = class(TDSServerModule)
  private
    { Private declarations }
  public
    { Public declarations }
    [TRoleAuth('Admin')]
    function EchoString(Value: string): string;
    [TRoleAuth('Admin')]
    function ReverseString(Value: string): string;
  end;
 

  

권한체크1.png

이 댓글 링크
다른 사이트에 공유하기

0 answers to this question

Recommended Posts

이 질문에 답변한 사람이 아직 없습니다

이 토의에 참여하세요

지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.

Guest
이 질문에 답변하기...

×   서식있는 텍스트로 붙여넣기.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   이전에 작성한 콘텐츠가 복원되었습니다..   편집창 비우기

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.