KENT-WEB サポートコーナー 過去ログ [ 0296 ]


記事No: 10302
投稿日: 2012/03/29(Thu) 15:45:22
タイトルWebProtect 自前のCGIでログインIDを利用したい
ID情報: ugueve
投稿者: ugu
URLhttp://evenriver.co.jp/c/ent.cgi

現在、WebProtect の設置テストをしておりまして、独自のCGIも動く様になったのですが、その独自CGI でログインIDを取得する方法が分からず困っております。

BASIC認証だと、環境変数にセットされているので $ENV{'REMOTE_USER'} で取得出来ていたのですが...

何かアドバイスがありましたら、お願い致します。


記事No: 10306
投稿日: 2012/03/30(Fri) 08:55:24
タイトルRe: WebProtect 自前のCGIでログインIDを利用したい
ID情報: kent
投稿者: KENT

> 現在、WebProtect の設置テストをしておりまして、独自のCGIも動く様になったのですが、その独自CGI でログインIDを取得する方法が分からず困っております。
>
> BASIC認証だと、環境変数にセットされているので $ENV{'REMOTE_USER'} で取得出来ていたのですが...
>
> 何かアドバイスがありましたら、お願い致します。

残念ながら、ID取得は対応していないですね。
今後対応を考えみますね。


記事No: 10313
投稿日: 2012/03/30(Fri) 13:31:23
タイトルRe^2: WebProtect 自前のCGIでログインIDを利用したい
ID情報: ugueve
投稿者: ugu
URLhttp://evenriver.co.jp/c/ent.cgi

> > 現在、WebProtect の設置テストをしておりまして、独自のCGIも動く様になったのですが、その独自CGI でログインIDを取得する方法が分からず困っております。
> >
> > BASIC認証だと、環境変数にセットされているので $ENV{'REMOTE_USER'} で取得出来ていたのですが...
> >
> > 何かアドバイスがありましたら、お願い致します。
>
> 残念ながら、ID取得は対応していないですね。
> 今後対応を考えみますね。

自前CGIにてログインユーザー別に処理を行っているので、取得出来ないとなると WebProtect の導入は断念するしかありません。
是非とも対応をお願い致します。


記事No: 10314
投稿日: 2012/03/30(Fri) 15:11:06
タイトルRe^3: WebProtect 自前のCGIでログインIDを利用したい
ID情報: Fuyuki
投稿者: BAL
URLhttp://www26.tok2.com/home/sumire1100/

cgiprot.cgiでログインIDを取得してそれをグローバル変数で各CGIに渡すのが最も簡単かと思います。

●cgiprot.cgi

#package cgiprot; ## ★コメントアウト

#-----------------------------------------------------------
# チェック処理
#-----------------------------------------------------------
if ($host eq $hos) {
$flg++;
$time = $tim;
$id2=$id; ## ★追加
last;


●各cgiスクリプト側の記述
#use strict; ## ★コメントアウト
require '../protect/cgiprot.cgi';
✓

IDを表示させたい位置に$id2を記述


記事No: 10315
投稿日: 2012/03/30(Fri) 17:24:24
タイトルRe^4: WebProtect 自前のCGIでログインIDを利用したい
ID情報: ugueve
投稿者: ugu
URLhttp://evenriver.co.jp/c/ent.cgi

> cgiprot.cgiでログインIDを取得してそれをグローバル変数で各CGIに渡すのが最も簡単かと思います。
>
> ●cgiprot.cgi
>
> #package cgiprot; ## ★コメントアウト
>
> #-----------------------------------------------------------
> # チェック処理
> #-----------------------------------------------------------
> if ($host eq $hos) {
> $flg++;
> $time = $tim;
> $id2=$id; ## ★追加
> last;
>
>
> ●各cgiスクリプト側の記述
> #use strict; ## ★コメントアウト
> require '../protect/cgiprot.cgi';
> ✓
>
> IDを表示させたい位置に$id2を記述

BAL様、ご返答有り難うございます!

早速、cgiprot.cgi の指定部に「$id2=$id;」を追加し、各CGIの「use strict」をコメントにして、本文最後に添付しているCGIを実行してみるのですが、画面には TeSt としか出ず、「&cgiprot::check;」の変数セットが影響していないようなのです。

ちなみに、「 &cgiprot::check; 」を BAL様が提示された「 ✓ 」にすると、以下のエラーが発生します。

Undefined subroutine &main::check called at /virtual/xxx.xxx.xxx.xxx/home/c/cgitest.cgi line 15.

私がCGI素人故に何か大きな勘違いをしているような気がします。

何かアドバイスがありましたら宜しくお願い致します。

------------------------------------
▼ cgitest.cgi に手を加えたソース
#!/usr/local/bin/perl

## cgitest.cgi - 2011/05/29
## created by (c) KentWeb

BEGIN {
use CGI::Carp qw(carpout fatalsToBrowser);
carpout(STDOUT);
}

$id2="TeSt"; # 動作確認のダミーセット

require './cgiprot.cgi';
&cgiprot::check;

# テスト画面
print <<EOM;
Content-type: text/html

<html>
$id2
</html>
EOM


記事No: 10318
投稿日: 2012/03/30(Fri) 18:10:40
タイトルRe^5: WebProtect 自前のCGIでログインIDを利用したい
ID情報: Fuyuki
投稿者: BAL
URLhttp://www26.tok2.com/home/sumire1100/

cgiprot.cgiの行頭をコメントアウトしてCGI側で&check;をすれば作動しますが。
cgiprot.cgiはprotect.cgiと同じ場所に入れてやれば複数のCGIをアクセス制限します。

#package cgiprot; ## ★コメントアウト


記事No: 10319
投稿日: 2012/03/30(Fri) 18:49:10
タイトルRe^6: WebProtect 自前のCGIでログインIDを利用したい
ID情報: ugueve
投稿者: ugu
URLhttp://evenriver.co.jp/c/ent.cgi

> cgiprot.cgiの行頭をコメントアウトしてCGI側で&check;をすれば作動しますが。
> cgiprot.cgiはprotect.cgiと同じ場所に入れてやれば複数のCGIをアクセス制限します。
>
> #package cgiprot; ## ★コメントアウト

出来ました! 有り難うございます!
感謝感激です。 これで、なんとか4月から稼働の目処が立ちました! 重ねてお礼申し上げます。


[検索ページ] [掲示板]