즐겁게 개발을...

개발보다 게임이 더 많이 올라오는 것 같은...

c# 44

[2021.04] C#에서 이중 인증 중 OTP 활용 방법

개발환경: VisualStudio 2017, Devexpress 20.x 왜이리 한글 문서들로 정리된 문서가 없는지 또 작성해본다. 보통 이중인증 보다는 투-팩터 인증이라는 단어를 많이 사용한다. (나만 그런가?) 요즘 사이버 보안이 잘 뚫리다 보니 아이디/패스워드 로그인 체계에 덧 붙여서 이중 또는 다중 인증을 사용토록 하는게 요즘 인/허가 가이드의 보안 방침이다. 이중 인증의 방식은 공인인증, 사설인증, 생체인증, 간편인증, ... 진짜 많다. 그 중 본문에서는 시간정보와 비밀키를 이용한 OTP를 다뤄볼까 한다. OTP를 계산하는 방식은 동일하기 때문에 어떤 OTP앱을 사용해도 동일하게 인증 체크가 가능하다. 개념만 알면 엄청 단순해서 글 작성이 안된 것일까? 아니면 많이 사용하지 않아서일까? 참고U..

개발/C# 2021.04.06

[2021.03] C#에서 Unix Time을 구해보자.

보통 로그에 시간정보가 누적해서 들어가기 때문에 Date타입이나 String타입으로 설정하는 것보다는 UnixTime을 이용해 숫자값으로 저장하는 것이 훨씬 적게 데이터를 쌓을 수 있다. UnixTime은 ISO8601 표준에 의거해 1970년 01월 01일 09시 00분 00초를 기점으로 초 단위로 카운트 된다. 이 글을 작성하는 시간으로 Unix Time을 구하면 다음과 같다. # date -d '2021-03-26 15:29:00' '+%s.%N' | cut -b1-10 1616740140 이 정보를 이용해 C#으로 작성해보자. public static DateTime IntToDateTime(int intDate) { return new DateTime(1970, 1, 1, 9, 0, 0).Add..

개발/C# 2021.03.26

[2021.03] C# 프로그램을 관리자 권한으로 실행하기

출처: www.enjoydev.net/xe/en_devboard/26728 엔조이데브: 팁&트릭 - 관리자 권한으로 실행하기 다음 함수 추가 public static bool IsAdministrator() { WindowsIdentity identity = WindowsIdentity.GetCurrent(); if (null != identity) { WindowsPrincipal principal = new WindowsPrincipal(identity); return principal.IsInRole... www.enjoydev.net 다음 함수는 프로그램이 관리자 권한으로 실행했는지에 대한 여부를 알 수 있게 하는 함수이다. Static 함수로 추가하거나 클래스에 다음 함수를 추가한다. 아래 코드..

개발/C# 2021.03.26

[2021.03] SqLite + Dapper(ORM) 사용방법

환경: Visual Studio 2017, C#, 닷넷 4.6.1 검색능력이 떨어진 건지 제대로 된 게시물이 없는 건지 국/내외 게시물을 다 뒤져도 안나와서 짜집기 + 자작으로 작성해보았다. Node.js에서 Squelize로 작년까지 개발하다가 C#으로 넘어오니 ORM 패키지가 별로 없었다. Sonic도 있다고 하던데 이건 차차 알아보기로 하고 오늘은 Dapper를 사용해보자. SQLite란? SQLite는 원래 모바일 특히 안드로이드에서 사용하는 데이터베이스이다. 작지만 강력하고 크로스플랫폼에서 사용할 수 있는 무료인 파일DB로 보면 된다. Dapper란? Dapper는 요즘 깡 쿼리보다는 모델링된 객체를 통해 CRUD를 하는 방식의 ORM(Object Relational Mapping) 방식의 패키..

개발/C# 2021.03.10