[0328]_Azure_CustomVisionAPI_dog_Pythonサンプル★

マニュアルのありか
https://docs.microsoft.com/en-us/azure/cognitive-services/custom-vision-service/home

/var/www/html/CVAPI_20170901

custom_vision_api_t********1.py
を作る。

########### Python 2.7 #############
import httplib, urllib, base64

headers = {
# Request headers
‘Content-Type’: ‘appl***********son’,
‘Prediction-key’: ‘5e68fe3********2edc352a3223d8’,
}

params = urllib.urlencode({
# Request parameters
‘iterationId’: ‘242e1c24-********-f9cde99ada30′,
#’application’: ‘octet********ream’,
})

imagefile = open(“./f********/L3.jpg”)

try:
conn = httplib.HTTPSConnection(********.microsoft.com’)
conn.request(“POST”, “/customvision/v1.0/Prediction/3a5ebacf-********/image?%s” % params, imagefile, headers)

response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print(“[Errno {0}] {1}”.format(e.errno, e.strerror))

####################################

[0327]_geustユーザ★

「gustユーザに、外部ホストからのアクセスを与える、けどデータベースはguestのみ」の設定

【1】MySQL
MySQLに外部ホストから接続できるように設定する

MySQLに外部ホストから接続できるように設定する

>GRANT ALL ON guest.* TO guest@”%” IDENTIFIED BY “guest”;

でできました。

【2】User
超制限付きユーザーの作り方
https://ameblo.jp/itboy/entry-10054454911.html
を参考


# ln -s /bin/bash /bin/rbash


/etc/shellsにrbashを登録
/bin/rbash


専用ユーザ
# useradd -m -d /home/guest -s /bin/rbash guest

④ユーザー環境ファイル
# chown root:root /home/guest/.bash_profile
# chmod 755 /home/guest/.bash_profile
「.bash_profile」ファイルを編集
PATH=/home/guest
export PATH

⑤実行させたいコマンドを登録(例)
# ln -s /bin/ls /home/guest/ls
# ln -s /bin/cat /home/guest/cat

【3】SSH
SSHのログインを制限する
https://ameblo.jp/itboy/entry-10050467939.html
を参考
/etc/ssh/sshd_config内で「PermitRootLogin yes」と設定
「AllowUsers」の後に、「ログイン可能」なユーザーを列挙
AllowUsers *

CentOS 6まででsshdの再起動
$ sudo /etc/rc.d/init.d/sshd restart

# passwd guest
でパスワード変更

[0326]_Azure_Custom Vision Service をPythonで★

【Azure】Custom Vision Service をPythonで叩く
http://qiita.com/chooyan_eng/items/af4e4c422b37eb718a81
を参考にしました。

手順どおり、、、
「AzureCognitive ServicesCustom Vision Service」
https://docs.microsoft.com/en-us/azure/cognitive-services/custom-vision-service/home

左メニュー “Reference” > “Custom Vision Prediction API Reference”
を試します。

****************
テスト(PredictimageUrlで)
****************

私の表記URLは、
https://southcentralus.dev.cognitive.microsoft.com/docs/services/eb68250e””””””””””””””””””653/operations/58acd3c1ef062f0344a42814/console
です、、、、

①ProjectID
コンソール画面自体のURLの “projects/” より後ろの部分
https://www.customvision.ai/projects/3a5ebacf-1534″”””””””””””””””””#/performance
ただし・・・#/performanceは除く、、で、
3a5ebac””””””””””””””””””c8b08aad
のみ書く

②iterationId
コンソールの “PERFORMANCE” 画面内、左上の “Prediction URL” をクリックして表示されるURLの末尾、 “iterationId” パラメータの後ろの文字列
242e1c24″”””””””””””””””””cde99ada30
を書く

③Prediction-key
Custom Vision Service コンソールの設定画面内の “Prediction Key:” 欄
5e68fe””””””””””””””””””223d8
を書く

④Request body
{
“Url”: “http://153.12″”””””””””””””””””170901/files/D5.jpg”
}
を書く

****************
結果
****************
apim-request-id: da580c92-7efd-435a-a357-acd788c520de
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
Date: Fri, 01 Sep 2017 20:10:05 GMT
Content-Length: 418
Content-Type: application/json; charset=utf-8

{

“Id”: “473af1b””””””””””””””””””ea4a96”,

“Project”: “3a5ebacf””””””””””””””””””c8b08aad”,

“Iteration”: “242””””””””””””””””””e99ada30″,

“Created”: “2017-09″”””””””””””””””””.8350017Z”,

“Predictions”: [

{

“TagId”: “f393186″”””””””””””””””””e453dda23”,

“Tag”: “レトリーバー”,

“Probability”: 0.50478065

},

{

“TagId”: “11d26″”””””””””””””””””23b6ba51”,

“Tag”: “ミニチュアシュナウザー”,

“Probability”: 0.4952194

}

]

}

[0325]_Azure_2写真_Basic認証★

Basic認証するものとして
20170828_pho12_aus.php
にアクセスへ変更

**********************
staff_login.html
**********************




Azure verify

Azure verify(login)
nameは半角、passは番号7桁

ログイン

①ネーム

②パスワード



**********************
staff_login_check.php
**********************
setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

$sql=’SELECT * FROM verify_staff WHERE name=? AND pass=?’;
$stmt=$dbh->prepare($sql);
$data[]=$staff_name;
$data[]=$staff_pass;
$stmt->execute($data);

$dbh=null;

$rec=$stmt->fetch(PDO::FETCH_ASSOC);

if($rec==false)
{
print ‘ネームかパスワードが間違っています。
‘;
print ‘ 戻る‘;
}
else
{
session_start();
$_SESSION[‘login’]=1;

$_SESSION[‘staff_name’]=$staff_name;
$_SESSION[‘staff_pass’]=$staff_pass;
header(‘Location:./20170828_pho12_aus.html’);
exit();
}

}
catch(Exception $e)
{
print ‘ただいま障害により大変ご迷惑をお掛けしております。’;
exit();
}

?>

**********************
staff_logout.php(使わなかった・・・)
**********************





Azure verify(logout)

ログアウトしました。

ログイン画面へ


**********************
遷移先のWebトップに書くもの
http://153.126.154.******************20170828_pho12_aus.html
**********************

‘;
print ‘ログイン画面へ‘;
exit();
}
else
{
print ‘ようこそ! ’;
print $_SESSION[‘staff_name’];
print ‘さんログイン中
‘;
print ‘
‘;
}
?>

**********************
(参考:使わなかった・・・)
sample
http://www.phpbook.jp/tutorial/auth/index1.html
**********************


PHP TEST

ようこそ、会員向けページへ