OSDN Git Service

(split) Convert release and draft pages to UTF-8.
[linuxjm/LDP_man-pages.git] / draft / man2 / setuid.2
index b4ed2fa..6b3a1d8 100644 (file)
 .\" Updated & Modified Wed Jan  5 00:51:28 JST 2005 by Yuichi SATO
 .\" Updated 2010-04-10, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v3.24
 .\"
-.\"WORD:       identity                ¼±ÊÌ
-.\"WORD:       effective user ID       ¼Â¸ú¥æ¡¼¥¶¡¼ID
-.\"WORD:       real user ID            ¼Â¥æ¡¼¥¶¡¼ID
-.\"WORD:       saved user ID           Êݸ¥æ¡¼¥¶¡¼ID
-.\"WORD:       implement               ¼ÂÁõ
-.\"WORD:       root                    ¥ë¡¼¥È
-.\"WORD:       super-user              ¥¹¡¼¥Ñ¡¼¡¦¥æ¡¼¥¶¡¼
+.\"WORD:       identity                識別
+.\"WORD:       effective user ID       å®\9få\8a¹ã\83¦ã\83¼ã\82¶ã\83¼ID
+.\"WORD:       real user ID            å®\9fã\83¦ã\83¼ã\82¶ã\83¼ID
+.\"WORD:       saved user ID           ä¿\9då­\98ã\83¦ã\83¼ã\82¶ã\83¼ID
+.\"WORD:       implement               実装
+.\"WORD:       root                    ルート
+.\"WORD:       super-user              ã\82¹ã\83¼ã\83\91ã\83¼ã\83»ã\83¦ã\83¼ã\82¶ã\83¼
 .\"
 .TH SETUID 2 2010-02-21 "Linux" "Linux Programmer's Manual"
 .\"O .SH NAME
-.SH Ì¾Á°
+.SH 名前
 .\"O setuid \- set user identity
-setuid \- ¥æ¡¼¥¶¡¼¼±ÊÌ (identity) ¤òÀßÄꤹ¤ë
+setuid \- ユーザー識別 (identity) を設定する
 .\"O .SH SYNOPSIS
-.SH ½ñ¼°
+.SH 書式
 .B #include <sys/types.h>
 .br
 .B #include <unistd.h>
 .sp
 .BI "int setuid(uid_t " uid );
 .\"O .SH DESCRIPTION
-.SH ÀâÌÀ
+.SH 説明
 .\"O .BR setuid ()
 .\"O sets the effective user ID of the calling process.
 .\"O If the effective UID of the caller is root,
 .\"O the real UID and saved set-user-ID are also set.
 .BR setuid ()
-¤Ï¸Æ¤Ó½Ð¤·¸µ¤Î¥×¥í¥»¥¹¤Î¼Â¸ú (effective) ¥æ¡¼¥¶¡¼ ID ¤òÀßÄꤹ¤ë¡£
-¤â¤·¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Î¼Â¸ú UID ¤¬ root ¤Ê¤é¤Ð¡¢
-¼Â (real) UID ¤ÈÊݸ (saved) set-user-ID ¤âÀßÄꤵ¤ì¤ë¡£
+は呼び出し元のプロセスの実効 (effective) ユーザー ID を設定する。
+もし呼び出し元プロセスの実効 UID が root ならば、
+実 (real) UID と保存 (saved) set-user-ID も設定される。
 .PP
 .\"O Under Linux,
 .\"O .BR setuid ()
@@ -76,14 +76,14 @@ setuid \- 
 .\"O This allows a set-user-ID (other than root) program to drop all of its user
 .\"O privileges, do some un-privileged work, and then reengage the original
 .\"O effective user ID in a secure manner.
-Linux ¤Ç¤Ï¡¢
+Linux では、
 .BR setuid ()
-¤Ï
+は
 .B _POSIX_SAVED_IDS
-¤ò¤â¤Ã¤¿ POSIX ÈǤΤ褦¤Ë¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¡£
-¤³¤ì¤Ï (¥ë¡¼¥È°Ê³°¤Î) set-user-ID ¥×¥í¥°¥é¥à¤Ë¤½¤Î¥æ¡¼¥¶¡¼¤ÎÆø¢¤ò
-Á´¤ÆÍ¿¤¨¡¢Æø¢¤ÎɬÍפʤ¤»Å»ö¤ò¤·¡¢ËÜÍè¤Î¼Â¸ú¥æ¡¼¥¶¡¼ ID ¤Ë
-°ÂÁ´¤ÊÊýË¡¤ÇºÆ¤ÓÌ᤹¤³¤È¤òµö¤¹¡£
+をもった POSIX 版のように実装されている。
+これは (ルート以外の) set-user-ID プログラムにそのユーザーの特権を
+全て与え、特権の必要ない仕事をし、本来の実効ユーザー ID に
+安全な方法で再び戻すことを許す。
 .PP
 .\"O If the user is root or the program is set-user-ID root, special care must be
 .\"O taken.
@@ -94,15 +94,15 @@ Linux 
 .\"O .IR uid .
 .\"O After this has occurred, it is impossible for the program to regain root
 .\"O privileges.
-¥æ¡¼¥¶¡¼¤¬ root ¤Þ¤¿¤Ï¥×¥í¥°¥é¥à¤¬ root ¤Ë set-user-ID ¤µ¤ì¤Æ¤¤¤ë¤Ê¤é¤Ð¡¢
-ÆÃÊ̤ÎÃí°Õ¤¬Ê§¤ï¤ì¤ë¡£
+ユーザーが root またはプログラムが root に set-user-ID されているならば、
+特別の注意が払われる。
 .BR setuid ()
-´Ø¿ô¤Ï¸Æ¤Ó½Ð¤·¼Ô¤Î¼Â¸ú¥æ¡¼¥¶¡¼ ID ¤ò¥Á¥§¥Ã¥¯¤·¡¢
-¤½¤ì¤¬¥¹¡¼¥Ñ¡¼¡¦¥æ¡¼¥¶¡¼¤Ê¤é¤Ð¡¢
-¥×¥í¥»¥¹¤Ë´ØÏ¢¤¹¤ëÁ´¤Æ¤Î¥æ¡¼¥¶¡¼ ID ¤Ë
+関数は呼び出し者の実効ユーザー ID をチェックし、
+それがスーパー・ユーザーならば、
+プロセスに関連する全てのユーザー ID に
 .I uid
-¤òÀßÄꤹ¤ë¡£
-¤³¤ì¤¬¹Ô¤Ê¤ï¤ì¤¿¸å¤Ë¤Ï¥×¥í¥°¥é¥à¤¬ºÆ¤Ó¥ë¡¼¥È¤ÎÆø¢¤òÆÀ¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¡£
+を設定する。
+これが行なわれた後にはプログラムが再びルートの特権を得ることはできない。
 .PP
 .\"O Thus, a set-user-ID-root program wishing to temporarily drop root
 .\"O privileges, assume the identity of an unprivileged user, and then regain
@@ -110,24 +110,24 @@ Linux 
 .\"O .BR setuid ().
 .\"O You can accomplish this with
 .\"O .BR seteuid (2).
-¤·¤¿¤¬¤Ã¤Æ¡¢set-user-ID-root ¥×¥í¥°¥é¥à¤Ç¡¢°ì»þŪ¤Ë¥ë¡¼¥ÈÆø¢¤ò²ò½ü¤·¡¢
-ÈóÆø¢¥æ¡¼¥¶¤Ç¤¢¤ë¤«¤Î¤è¤¦¤Ë¿¶Éñ¤¤¡¢¸å¤Ç¥ë¡¼¥È¸¢¸Â¤ò¤â¤¦°ìÅÙÆÀ¤è¤¦¤È
-¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢
+したがって、set-user-ID-root プログラムで、一時的にルート特権を解除し、
+非特権ユーザであるかのように振舞い、後でルート権限をもう一度得ようと
+する場合には、
 .BR setuid ()
-¤ò»È¤¦¤³¤È¤¬¤Ç¤­¤Ê¤¤¡£¤½¤Î¾ì¹ç¤Ë¤Ï¡¢
+を使うことができない。その場合には、
 .BR seteuid (2)
-¤ò»È¤¦É¬Íפ¬¤¢¤ë¡£
+を使う必要がある。
 .\"O .SH "RETURN VALUE"
-.SH ÊÖ¤êÃÍ
+.SH 返り値
 .\"O On success, zero is returned.
 .\"O On error, \-1 is returned, and
 .\"O .I errno
 .\"O is set appropriately.
-À®¸ù¤·¤¿¾ì¹ç¤Ï 0 ¤¬ÊÖ¤µ¤ì¤ë¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ï \-1 ¤¬ÊÖ¤µ¤ì¡¢
+成功した場合は 0 が返される。エラーの場合は \-1 が返され、
 .I errno
-¤¬Å¬ÀÚ¤ËÀßÄꤵ¤ì¤ë¡£
+が適切に設定される。
 .\"O .SH ERRORS
-.SH ¥¨¥é¡¼
+.SH ã\82¨ã\83©ã\83¼
 .TP
 .B EAGAIN
 .\"O The
@@ -138,11 +138,11 @@ Linux 
 .\"O .B RLIMIT_NPROC
 .\"O resource limit.
 .I uid
-¤¬¸½ºß¤Î¥æ¡¼¥¶¡¼ ID ¤È¥Þ¥Ã¥Á¤»¤º¡¢¤³¤Î
+が現在のユーザー ID とマッチせず、この
 .I uid
-¤Ë¤è¤Ã¤Æ¥×¥í¥»¥¹¤¬¥ê¥½¡¼¥¹¾å¸Â
+によってプロセスがリソース上限
 .B RLIMIT_NPROC
-¤òĶ¤¨¤¿¡£
+を超えた。
 .TP
 .B EPERM
 .\"O The user is not privileged (Linux: does not have the
@@ -150,26 +150,26 @@ Linux 
 .\"O capability) and
 .\"O .I uid
 .\"O does not match the real UID or saved set-user-ID of the calling process.
-¥æ¡¼¥¶¡¼¤¬Æø¢¤ò»ý¤¿¤º
-(Linux ¤Ç¤Ï
+ユーザーが特権を持たず
+(Linux では
 .B CAP_SETUID
-¥±¡¼¥Ñ¥Ó¥ê¥Æ¥£ (capability) ¤ò»ý¤¿¤º)¡¢
+ケーパビリティ (capability) を持たず)、
 .I uid
-¤¬¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Î¼Â UID ¤Þ¤¿¤ÏÊݸ set-user-ID ¤È°ìÃפ·¤Ê¤¤¡£
+が呼び出し元プロセスの実 UID または保存 set-user-ID と一致しない。
 .\"O .SH "CONFORMING TO"
-.SH ½àµò
+.SH 準拠
 .\"O SVr4, POSIX.1-2001.
 .\"O Not quite compatible with the 4.4BSD call, which
 .\"O sets all of the real, saved, and effective user IDs.
 .\"O .\" SVr4 documents an additional EINVAL error condition.
 SVr4, POSIX.1-2001.
-4.4BSD ¤Î¥³¡¼¥ë¤È¤Ï´°Á´¤Ê¸ß´¹À­¤Ï¤Ê¤¤¡¢
-BSD ¤Î¥³¡¼¥ë¤Ï¼Â (real)¡¢Êݸ (saved)¡¢¼Â¸ú (effective) ID ¤ÎÁ´¤Æ¤òÀßÄꤹ¤ë¡£
-.\" SVr4 ¤Ë¤Ï¾¤Ë EINVAL ¥¨¥é¡¼¤Ë¤Ä¤¤¤Æ¤Îµ­½Ò¤¬¤¢¤ë¡£
+4.4BSD のコールとは完全な互換性はない、
+BSD のコールは実 (real)、保存 (saved)、実効 (effective) ID の全てを設定する。
+.\" SVr4 には他に EINVAL エラーについての記述がある。
 .\"O .SH NOTES
 .\"O .SS Linux Notes
-.SH Ãí°Õ
-.SS Linux ¤Ç¤ÎÃí°Õ
+.SH 注意
+.SS Linux での注意
 .\"O Linux has the concept of file system user ID, normally equal to the
 .\"O effective user ID.
 .\"O The
@@ -177,22 +177,22 @@ BSD 
 .\"O call also sets the file system user ID of the calling process.
 .\"O See
 .\"O .BR setfsuid (2).
-Linux ¤Ï¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¡¦¥æ¡¼¥¶¡¼ ID ¤Î³µÇ°¤ò»ý¤Ä¡£
-Ä̾¤³¤ì¤Ï¼Â¸ú¥æ¡¼¥¶¡¼ ID ¤ËÅù¤·¤¤¡£
+Linux はファイル・システム・ユーザー ID の概念を持つ。
+通常、これは実効ユーザー ID に等しい。
 .BR setuid ()
-¥³¡¼¥ë¤Ï¸Æ¤Ó½Ð¤·¸µ¤Î¥×¥í¥»¥¹¤Î¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¡¦¥æ¡¼¥¶¡¼ ID ¤âÀßÄꤹ¤ë¡£
+コールは呼び出し元のプロセスのファイル・システム・ユーザー ID も設定する。
 .BR setfsuid (2)
-¤â»²¾È¤¹¤ë¤³¤È¡£
+も参照すること。
 .PP
 .\"O If
 .\"O .I uid
 .\"O is different from the old effective uid, the process will
 .\"O be forbidden from leaving core dumps.
 .I uid
-¤¬ÀΤμ¸ú uid ¤È°Û¤Ã¤Æ¤¤¤¿¾ì¹ç¡¢¥×¥í¥»¥¹¤Ï¥³¥¢¡¦¥À¥ó¥×¤¹¤ë¤³¤È¤ò
-¶Ø»ß¤µ¤ì¤ë¡£
+が昔の実効 uid と異っていた場合、プロセスはコア・ダンプすることを
+禁止される。
 .\"O .SH "SEE ALSO"
-.SH ´ØÏ¢¹àÌÜ
+.SH 関連項目
 .BR getuid (2),
 .BR seteuid (2),
 .BR setfsuid (2),