個人を識別可能な情報
言語は、非構造化テキストで個人識別可能情報(PII)の識別を解除するオプションを検出、分類および提供します。
ユース・ケース
- ユーザー・フィードバックでのプライベート情報の検出およびキュレーション
-
多くの組織では、製品レビュー、返品要求、サポート・チケット、フィードバック・フォーラムなどの様々なチャネルを通じてユーザー・フィードバックを収集しています。PIIエンティティの自動検出に言語PII検出サービスを使用すると、事前に警告するだけでなく、投稿されたフィードバックを保存する前に匿名化することもできます。PIIエンティティの自動検出を使用すると、プライベート・データの共有についてプロアクティブに警告したり、マスクされたデータの格納などのメジャーを実装するためのアプリケーションを実装できます。
- 機密データの存在をスキャンするオブジェクト・ストレージ
-
OCI Object Storageなどのクラウド・ストレージ・ソリューションは、多くのチームがローカルで管理または共有する場所にビジネス・ドキュメントを格納するために、従業員によって広く使用されています。このような共有場所が従業員名、人口統計、給与情報などの個人情報を格納しないようにするには、PIIの存在のためにすべての文書を自動スキャンする必要があります。OCI Language PIIモデルは、大量のテキスト・ドキュメントを大規模に処理するためのバッチAPIを提供します。
サポートされているエンティティ
次の表に、PIIで抽出できる様々なエンティティを示します。
エンティティ・タイプ | 説明 |
---|---|
PERSON |
ユーザー名 |
ADDRESS |
アドレス |
AGE |
期間 |
DATE_TIME |
日付または時間 |
SSN_OR_TAXPAYER |
社会保障番号または納税者ID (US) |
EMAIL |
電子メール |
PASSPORT_NUMBER_US |
パスポート番号(US) |
TELEPHONE_NUMBER |
電話またはFAX(米国) |
DRIVER_ID_US |
ドライバ識別番号(US) |
BANK_ACCOUNT_NUMBER |
銀行口座番号(US) |
BANK_SWIFT |
銀行口座(SWIFT) |
BANK_ROUTING |
銀行ルーティング番号 |
CREDIT_DEBIT_NUMBER |
クレジットまたはデビット・カード番号 |
IP_ADDRESS |
IPアドレス(IPV4とIPV6の両方) |
MAC_ADDRESS |
MACアドレス |
シークレット・タイプは次のとおりです: |
|
COOKIE |
WebサイトCookie |
XSRF TOKEN |
クロスサイト・リクエスト・フォージェリ(XSRF)トークン |
AUTH_BASIC |
Basic認証 |
AUTH_BEARER |
Bearer認証 |
JSON_WEB_TOKEN |
JSON Web Token |
PRIVATE_KEY |
暗号化秘密キー |
PUBLIC_KEY |
暗号化公開キー |
OCI内のリソースへのアクセスおよび管理に必要な認証情報であるOCIアカウント資格証明を次に示します。これらの資格証明は、OCIサービスおよびリソースと対話するためのユーザー、アプリケーションおよびサービスのセキュアな認証を保証する目的で使用されます。 |
|
OCI_OCID_USER |
OCIユーザー |
OCI_OCID_TENANCY |
テナントOCID (Oracle Cloud Identifier) |
OCI_SMTP_USERNAME |
SMTP (Simple Mail Transfer Protocol)ユーザー名 |
OCI_OCID_REFERENCE |
OCID参照 |
OCI_FINGERPRINT |
OCIフィンガープリント |
OCI_CREDENTIAL |
このタイプには、OCI認証トークン、OAuth資格証明およびSMTP資格証明が含まれます |
OCI_PRE_AUTH_REQUEST |
OCI事前認証済リクエスト |
OCI_STORAGE_SIGNED_URL |
OCIストレージ・シング済URL |
OCI_CUSTOMER_SECRET_KEY |
OCI顧客秘密キー |
OCI_ACCESS_KEY |
OCIアクセス・キーまたはセキュリティ資格証明 |
例
入力テキスト | "*"でマスクされた出力テキスト |
---|---|
|
|
この例のJSONは次のとおりです:
- サンプル・リクエスト
-
POST https://<region-url>/20210101/actions/batchDetectLanguagePiiEntities
- APIリクエスト形式:
-
{ "documents": [ { "languageCode": "en", "key": "1", "text": "Hello Support Team, I am reaching out to seek help with my credit card number 5111 1111 1111 1118 expiring on 11/23. There was a suspicious transaction on 12-Aug-2022 which I reported by calling from my mobile number +1 (650) 555-0190 also I emailed from my email id sarah.jones1234@hotmail.com. Would you please let me know the refund status? Regards, Sarah" } ], "compartmentId": "ocid1.tenancy.oc1..aaaaaaaadany3y6wdh3u3jcodcmm42ehsdno525pzyavtjbpy72eyxcu5f7q", "masking": { "ALL": { "mode": "MASK", "isUnmaskedFromEnd": true, "leaveCharactersUnmasked": 4 } } }
- レスポンスJSON:
-
{ "documents": [ { "key": "1", "entities": [ { "offset": 79, "length": 19, "type": "CREDIT_DEBIT_NUMBER", "text": "5111 1111 1111 1118", "score": 0.75, "isCustom": false }, { "offset": 111, "length": 5, "type": "DATE_TIME", "text": "11/23", "score": 0.9992455840110779, "isCustom": false }, { "offset": 156, "length": 11, "type": "DATE_TIME", "text": "12-Aug-2022", "score": 0.998766303062439, "isCustom": false }, { "offset": 218, "length": 2, "type": "TELEPHONE_NUMBER", "text": "+1", "score": 0.6941494941711426, "isCustom": false }, { "offset": 221, "length": 14, "type": "TELEPHONE_NUMBER", "text": "(650) 555-0190", "score": 0.9527066349983215, "isCustom": false }, { "offset": 268, "length": 27, "type": "EMAIL", "text": "sarah.jones1234@hotmail.com", "score": 0.95, "isCustom": false }, { "offset": 354, "length": 5, "type": "PERSON", "text": "Sarah", "score": 0.9918518662452698, "isCustom": false } ], "languageCode": "en", "maskedText": "Hello Support Team, \nI am reaching out to seek help with my credit card number ***************2345 expiring on *1/23. There was a suspicious transaction on *******2022 which I reported by calling from my mobile number +1 **********9999 also I emailed from my email id ***********************.com. Would you please let me know the refund status?\nRegards,\n*arah" } ], "errors": [] }
PIIまたはPHIテキスト出力の構成
言語サービスでは、テキストの分析時にPII/PHI出力を構成できます。
PIIルール
- カスタムPIIルール
-
キー タイプ 内容 ruleId
文字列 ルールの一意の識別子です。 regex
文字列 カスタム・データ型と一致する正規表現パターン。たとえば、([A-Z]{5}[0-9]{4}[A-Z]{1})はパン・カードと一致します。 type
文字列 照合するエンティティ・タイプの名前。たとえば、 PAN_CARD
です。prefix
リスト<String> 検出された regex
のmaxDistance
内で検索する単語またはフレーズ。suffix
リスト<String> 検出された regex
のmaxDistance
内で検索する単語またはフレーズ。isCaseSensitive
Boolean 照合プロセスで大文字と小文字を個別とみなすかどうかを決定します。値は大/小文字の区別を示す true
、大/小文字の区別を示すfalse
です。maxDistance
Integer prefix
/suffix
と照合済パターンの間の最大許容距離を文字数で定義し、パターンがprefix
/suffix
に一定の近接度内で検出されるようにします。priority
Integer ルールの優先順位優先度1が最も高い1から50の範囲。たとえば、同じ regex
を持つ2つのルールがあり、prefix
とsuffix
が異なる場合、優先度が高いルールが考慮されます。regexOnly
Boolean trueの場合、ルール
regex
と同じregex
を持つモデル検出済エンティティが削除されます。たとえば:
"I am 25 years old and he is 11 months old、" with the suffix set to ["years"]: 文では、「私は25歳で、彼は11か月齢です。
regexOnly
がtrueの場合、接尾辞"months"が指定された接尾辞"years"と一致しないため、25のみが検出されます。regexOnly
がfalseの場合、25と11の両方が検出され、ルールから25 (接尾辞"years"のため)およびモデルから11が検出されます。
filterEntityTypes
リスト<String> フィルタするOCIエンティティ・タイプ。たとえば、[PERSON、 AGE]は、モデル検出からエンティティ・タイプPERSONおよびAGEをフィルタします。フィルタを[ALL]に設定すると、検出されたすべてのモデル・エンティティがフィルタで除外されます。
[All]
をリストする場合、regex
ベースを検出し、事前定義済モデル・エンティティを無視します。disable
Boolean trueに設定すると、このルールが無効になります。
サンプル・ルール・ファイル
[
{
"ruleId": "rule 1",
"regex": "([A-Z]{2}[0-9]{2}-[0-9]{3}-[0-9]{3}-[0-9]{3}\/[0-9]{3})",
"type": "NAREGA_ID",
"isCaseSensitive": true,
"suffix": ["id", "narega"],
"regexOnly": true,
"maxDistance": 10,
"priority": 2
},
{
"ruleId": "rule 2",
"regex": "([A-Z]{5}[0-9]{4}[A-Z]{3})",
"type": "PAN_CARD",
"prefix": ["pan", "pancard"],
"isCaseSensitive": false,
"regexOnly": false,
"maxDistance": 10,
"priority": 2,
"filterEntityTypes": ["PERSON"]
},
{
"ruleId": "rule 3",
"regex": "([A-Z]{4}[0-9]{7})",
"type": "IFSC_CODE",
"prefix": ["IFSC"],
"isCaseSensitive": false,
"regexOnly":false,
"maxDistance": 20,
"priority": 2,
"disable": false
},
{
"ruleId": "rule 4",
"regex": "([A-Z]{2}[0-9]{2}-[0-9]{3}-[0-9]{3}-[0-9]{3}\/[0-9]{3})",
"type": "TIRA_ID",
"isCaseSensitive": false,
"prefix": ["Narega"],
"regexOnly": false,
"maxDistance": 10,
"priority": 1
}
]