본문 바로가기
[도서 정리] 11. 인증과 인가 - 보안의 기본 11. 인증과 인가 - 보안의 기본 * 인증과 인가 - 비슷하지만 다른 두 개념 * 인증은 여러분이 누구인지를 확정시키는 것 -인증(Authentication)은 여러분이 누구인지를 시스템이 식별하는 것. * 인가는 여러분이 해도 되는 일을 체크하는 것 -인가(Authority)는 인증에 의해 식별된 여러분이 무엇을 해도 좋은지를 체크하는 것 * 인증된 누군가의 행동을 인가하는 것이 기본11. 인증과 인가 - 보안의 기본, Authentication, authentication vs authority, Authority, Authorization, 권한, 식별, 인가, 인증, 인증 vs 권한, 인증 vs 인가, 인증과 인가 2019. 10. 12.
[SQLite3] 09. 안드로이드와 데이터베이스 [SQLite3] 09. 안드로이드와 데이터베이스 이 글은 "빠르게 활용하는 모바일 데이터베이스 SQLite3” 이란 글을 보며 필요한 내용만 정리한 글입니다.자세한 내용은 책을 구매해서 보세요 -안드로이드 플랫폼에서는 C 언어 기반의 SQLite3 lib 이 JNI 를 통해 제공되므로 SQLite3 C API 대신 안드로이드 플랫폼에서 제공하는 클래스와 메서드를 사용해야 한다. 1. DB 관련 클래스 DB 생성 -Context.openOrCreateDatabase() 메서드를 사용해 DB 를 만들 수 있다.DB 파일 이름, 권한, CursorFactory 를 인자로 전달한다.반환값은 SQLiteDatabase 객체이다. 권한 부분은 아래 옵션을 갖는다. MODE_PRIVATE : 해당 앱만 독점적으로 .. 2018. 5. 25.
[보안] MAC, DAC, RBAC [보안] MAC, DAC, RBAC MAC -강제적 접근통제라고 불리며, 영문으로는 Mandatory Access Control 이다. -사용자들은 자원에 대한 권한을 관리자로부터 부여받는다. -> 이것은 보안 레이블(Security Label)에 써진다.그리고 오직 관리자만이 객체와 자원들에 대한 권한을 할당할 수 있다.또한 관리자만이 객체의 보안 레벨 또는 사용자 보안등급을 수정할 수 있다. -정보 시스템 내에서 어떤 주체가 어떤 객체에 접근하려 할 때 보안레이블 정보에 기초하여 높은 보안을 요하는 정보가 낮은 보안수준의 주체에게 노출되지 않도록 접근을 제한하는 접근 통제 방법 -DAC 에 비해 향상된 보안방법이기는 하지만,객체단위 세밀한 권한 설정이 어렵다. DAC -임의적 접근 통제라고 불리며, .. 2018. 5. 1.
[android 보안] 패키지 관리 #2 [android 보안] 패키지 관리 #2 3.3. APK 설치 과정 -사이드 로딩(Side loading) 은 구글 플레이 스토어 같은 정식 스토어를 통하지 않고 앱을 직접 내려받아 설치하는 방법을 말한다. -APK 파일을 앱 디렉터리에 직접 복사하면 패키지 매니저가 자동으로 탐지하고 설치한다.패키지 매니저는 앱 디렉터리에 변화가 있는지 늘 감시한다. * 3.3.1 앱 패키지와 데이터의 위치 -/system/vendor/app/ 디렉터리에는 제조사 고유의 앱이 저장된다.사용자 설치 앱은 읽고 쓸 수 있는 userdata 파티션에 설치되며 언제든지 교체 및 제거할 수 있다.대부분의 사용자 설치 앱은 /data/app/ 디렉터리에 설치된다. -시스템 앱이든 사용자 설치 앱이든 데이터는 /data/data/ .. 2018. 4. 19.
[android 보안] 권한 #1 [android 보안] 권한 출처 : Android Security Internals 2장개요 목차 2. 권한 2.1. 권한의 본질 2.2. 권한 요청 2.3. 권한 관리 2.4. 권한 보호 수준 2.4.1. normal 2.4.2. dangerous 2.4.3. signature 2.4.4. signatureOrSystem 2.5.권한 할당 2.5.1. 권한과 프로세스 속성 2.5.2. 프로세스 속성 할당 2.6. 권한 적용 2.6.1. 커널 수준 적용 2.6.2. 네이티브 데몬 수준 적용 2.6.3. 프레임워크 수준 적용 2.7. 시스템 권한 2.7.1. signature 권한 2.7.2. development 권한 2.8. 공유 사용자 ID 2.9. 커스텀 권한 2.10. 공개 컴포넌트와 비공개 컴.. 2018. 4. 16.
[android 보안] 안드로이드 보안 모델 #2 [android 보안] 안드로이드 보안 모델 #2 1.2. 안드로이드 보안 모델 -시스템의 나머지 부분과 마찬가지로 안드로이드의 보안 모델은 리눅스 커널이 제공하는 보안기능을 활용한다.다중 사용자 시스템인 리눅스는 프로세스들을 서로 격리시키듯이 사용자 리소스들도 서로 격리시킬 수 있다. -전통적인 리눅스에서는 시스템에 로그인해서 셸을 통해 명령을 실행하는 실제 사용자나 백그라운드에서 실행되는 시스템 서비스에 전용 UID 를 부여했다.그러나 안드로이드는 스마트폰을 위해 만들어졌고, 또 모바일폰은 개인용 기기이기 때문에 시스템에 여러 사용자를 등록할 필요가 없다.사용자는 스마트폰의 소유자를 한 명으로 간주하고, 대신 UID 는 앱을 구분하는 용도로 사용한다. ** 1.2.1. 앱 샌드박스 -안드로이드는 앱을.. 2018. 4. 15.
[Facebook] Access Token, Permissions and Roles [Facebook] Access Token, Permissions and Roles https://developers.facebook.com/docs/facebook-login/access-tokens/https://developers.facebook.com/docs/facebook-login/access-tokens/expiration-and-extension -Facebook 로그인을 사용하여 앱에 연결하면, 앱에서 FB API 에 임시적인 Access Token 을 받을 수 있다.이 Token 에는 만료 시기와 토큰을 생성한 앱에 대한 정보가 있다.AccessToken 은 여러 API 를 통해 발급받을 수 있으며, Graph API 를 호출하는 데 사용된다. -AccessToken 은 다음의 유형이.. 2018. 2. 27.
[linux] real uid(ruid), effective uid(euid), chmod 를 통한 SetUID, SetGID, StickyBit 설정 [linux] real uid(ruid), effective uid(euid), chmod 를 통한 SetUID, SetGID, StickyBit 설정 ruid, euid -real uid( real user id ) 는 실제 본인의 id 를 이야기한다.이 녀석의 값은 변하지 않는다. ( root 는 바꿀 수 있다. ) -euid 는 현재 휘두를 수 있는 권한을 나타낸다. euid 는 기본적으로 ruid 와 같은 값이다.그러나 setuid bit 이 세팅된 프로그램을 수행시킬 때, 다른 값으로 할당될 수 있다. -rwsr-xr-x 1 root root 45396 may 25 2012 /usr/bin/passwd passwd 파일( setuid bit 이 세팅되어 있음 )을 user2 라는 ruid 를 가.. 2018. 1. 26.
[Objective-C] Foundation 프레임워크의 중요 클래스 - NSDictionary, NSValue, NSNumber, NSURL [Objective-C] Foundation 프레임워크의 중요 클래스 - NSDictionary, NSValue, NSNumber, NSURL 9.5. 사전 클래스 * 9.5.1. 사전 객체 개요 -키와 값 짝을 엔트리(entry)라고 부른다.키도 값도 객체를 지정하는데 키에는 보통 문자열을 지정하는 편이다. -키는 그 사전 객체 속에서는 유니크이어야만 한다.메서드 isEqual: 로 비교해서 같다고 평가되는 키를 가진 엔트리가 여러 개 있어선 안 된다.키는 nil 도 안 된다. -값 객체에는 nil 이외의 임의의 객체를 지정할 수 있다.숫자값과 좌표 등 자료형을 사전에 포함하고 싶을 때는 나중에 오는 NSNumber, NSValue 를 사용해야 한다.또한 비어있는 것을 나타내고 싶을 때는 NSNull .. 2018. 1. 1.
반응형