Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
<?xml version="1.0" encoding="EUC-KR"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko"><head>
<meta content="text/html; charset=EUC-KR" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_authz_owner - Apache HTTP Server Version 2.4</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">모듈</a> | <a href="../mod/directives.html">지시어들</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">용어</a> | <a href="../sitemap.html">사이트맵</a></p>
<p class="apache">Apache HTTP Server Version 2.4</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">모듈</a></div>
<div id="page-content">
<div id="preamble"><h1>아파치 모듈 mod_authz_owner</h1>
<div class="toplang">
<p><span>가능한 언어: </span><a href="../en/mod/mod_authz_owner.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_authz_owner.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="../ja/mod/mod_authz_owner.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/mod/mod_authz_owner.html" title="Korean"> ko </a></p>
</div>
<div class="outofdate">이 문서는 최신판 번역이 아닙니다.
최근에 변경된 내용은 영어 문서를 참고하세요.</div>
<table class="module"><tr><th><a href="module-dict.html#Description">설명:</a></th><td>파일 소유자를 이용한 권한부여</td></tr>
<tr><th><a href="module-dict.html#Status">상태:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">모듈명:</a></th><td>authz_owner_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">소스파일:</a></th><td>mod_authz_owner.c</td></tr>
<tr><th><a href="module-dict.html#Compatibility">지원:</a></th><td>아파치 2.1 이후부터</td></tr></table>
<h3>요약</h3>
<p>이 모듈은 HTTP 인증에 사용한 사용자 아이디(웹 사용자
아이디)를 요청한 파일의 파일시스템 소유자/그룹과 비교하여
파일의 접근권한을 부여한다. 여기서 사용자명과 암호는 이미
<code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code>이나
<code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code> 같은 인증모듈의 확인을
거쳤다. <code class="module"><a href="../mod/mod_authz_owner.html">mod_authz_owner</a></code>는 <code class="directive"><a href="../mod/core.html#require">Require</a></code> 지시어의 다음 두 아규먼트,
<code>file-owner</code>와 <code>file-group</code>을 처리한다:</p>
<dl>
<dt><code>file-owner</code></dt>
<dd>웹 사용자명이 요청한 파일 소유자의 시스템 이름과 같아야
한다. 즉, 운영체제가 요청한 파일의 소유자가
<code>jones</code>라면, 웹을 통해 파일에 접근하는 사용자도
마찬가지로 <code>jones</code>이어야 한다.</dd>
<dt><code>file-group</code></dt>
<dd>파일을 소유한 시스템 그룹명이
<code class="module"><a href="../mod/mod_authz_groupfile.html">mod_authz_groupfile</a></code>이나
<code class="module"><a href="../mod/mod_authz_dbm.html">mod_authz_dbm</a></code>과 같은 그룹 데이터베이스에
있고, 웹 사용자명이 해당 그룹에 속해야 한다. 예를 들어,
운영체제가 요청한 파일을 <code>accounts</code> (시스템)
그룹이 소유하고 있다면, 그룹 데이터베이스에
<code>accounts</code>라는 그룹이 있고 요청에 사용한 웹
사용자명이 그 그룹에 속해야 한다.</dd>
</dl>
<div class="note"><h3>주의</h3>
<p><code class="module"><a href="../mod/mod_authz_owner.html">mod_authz_owner</a></code>가 실제로 파일시스템에
있지 않는 자원을 (<em>즉,</em> 가상 자원) 권한부여한다면,
접근을 거부한다.</p>
<p>특히 <a href="../content-negotiation.html#multiviews">내용협상한
"MultiViews"</a> 자원을 권한부여하지 않는다.</p>
</div>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><h3>주제</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#examples">설정 예제</a></li>
</ul><h3 class="directives">지시어들</h3>
<p>이 모듈에는 지시어가 없습니다.</p>
<h3>Bugfix checklist</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">httpd changelog</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_authz_owner">Known issues</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_authz_owner">Report a bug</a></li></ul><h3>참고</h3>
<ul class="seealso">
<li><code class="directive"><a href="../mod/core.html#require">Require</a></code></li>
<li><code class="directive"><a href="../mod/core.html#satisfy">Satisfy</a></code></li>
<li><a href="#comments_section">Comments</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="examples" id="examples">설정 예제</a></h2>
<h3><a name="examples.file-owner" id="examples.file-owner">Require file-owner</a></h3>
<p>아파치 웹서버를 운영하는 다중사용자 시스템에서 각 사용자가
<code>~/public_html/private</code>에 자신의 파일을 저장한다고
가정하자. 모든 웹 사용자명을 저장하는 <code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmuserfile">AuthDBMUserFile</a></code>
데이터베이스가 있고, 여기에 저장된 사용자명은 서버에서
실제 파일을 소유하는 시스템 사용자명과 동일하다. 이 경우
아래 설정은 파일 소유자에게만 접근을 허용한다. 사용자
<code>jones</code>는 파일을 <code>jones</code>가 아닌
<code>smith</code>가 소유하고 있는 한
<code>/home/smith/public_html/private</code>에 있는 파일에
접근할 수 없다.</p>
<div class="example"><p><code>
<Directory /home/*/public_html/private><br />
<span class="indent">
AuthType Basic<br />
AuthName MyPrivateFiles<br />
AuthBasicProvider dbm<br />
AuthDBMUserFile /usr/local/apache2/etc/.htdbm-all<br />
Satisfy All<br />
Require file-owner<br />
</span>
</Directory>
</code></p></div>
<h3><a name="examples.file-group" id="examples.file-group">Require file-group</a></h3>
<p>위와 상황이 비슷하지만 여러명이
<code>~/public_html/project-foo</code>에 프로젝트 파일을
공유한다고 가정하자. 파일들은 시스템 그룹 <code>foo</code>가
소유하며, 모든 웹 사용자명과 사용자 그룹을 기록하는 <code class="directive"><a href="../mod/mod_authz_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></code>
데이터베이스가 있다. <em>즉,</em> 최소한 <code>foo</code>라는
그룹에 구성원이 있다. <code>jones</code>와
<code>smith</code>가 모두 그룹 <code>foo</code>의
구성원이라면, 둘 모두 <code>project-foo</code> 디렉토리에
접근할 수 있다.</p>
<div class="example"><p><code>
<Directory /home/*/public_html/project-foo><br />
<span class="indent">
AuthType Basic<br />
AuthName "Project Foo Files"<br />
AuthBasicProvider dbm<br />
<br />
# combined user/group database<br />
AuthDBMUserFile /usr/local/apache2/etc/.htdbm-all<br />
AuthDBMGroupFile /usr/local/apache2/etc/.htdbm-all<br />
<br />
Satisfy All<br />
Require file-group<br />
</span>
</Directory>
</code></p></div>
</div>
</div>
<div class="bottomlang">
<p><span>가능한 언어: </span><a href="../en/mod/mod_authz_owner.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_authz_owner.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="../ja/mod/mod_authz_owner.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/mod/mod_authz_owner.html" title="Korean"> ko </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_authz_owner.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2017 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">모듈</a> | <a href="../mod/directives.html">지시어들</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">용어</a> | <a href="../sitemap.html">사이트맵</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>