Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Note
This an experimental API that is shipped with our prerelease SDK. See WebView2 release notes.
interface ICoreWebView2ExperimentalSensitivityInfo
: public IUnknown
This interface provides information about sensitivity of a web page loaded in the WebView2 control.
Summary
| Members | Descriptions |
|---|---|
| get_SensitivityLabels | Gets a read-only collection of all sensitivity labels detected in the current web document. |
| get_SensitivityLabelsState | Gets the current state of sensitivity label detection. |
It contains the current state of sensitivity label detection and a collection of all sensitivity labels that have been reported by the web page via Page Interaction Restriction Manager.
Applies to
| Product | Introduced |
|---|---|
| WebView2 Win32 | N/A |
| WebView2 Win32 Prerelease | 1.0.3590 |
Members
get_SensitivityLabels
Gets a read-only collection of all sensitivity labels detected in the current web document.
public HRESULT get_SensitivityLabels(ICoreWebView2ExperimentalSensitivityLabelCollectionView ** value)
This collection contains list of sensitivity labels that have been reported by the web content. SensitivityLabels are valid only if SensitivityLabelsState is COREWEBVIEW2_SENSITIVITY_LABELS_STATE_AVAILABLE. In case SensitivityLabelsState is COREWEBVIEW2_SENSITIVITY_LABELS_STATE_NOT_APPLICABLE this collection will be empty. In case SensitivityLabelsState is COREWEBVIEW2_SENSITIVITY_LABELS_STATE_PENDING this will return nullptr.
std::vector<std::pair<std::wstring, std::wstring>> ScenarioSensitivityLabel::
ExtractSensitivityLabelInfo(
ICoreWebView2ExperimentalSensitivityLabelCollectionView* labelCollection)
{
std::vector<std::pair<std::wstring, std::wstring>> labelInfos;
if (!labelCollection)
{
return labelInfos;
}
UINT32 labelCount = 0;
CHECK_FAILURE(labelCollection->get_Count(&labelCount));
for (UINT32 i = 0; i < labelCount; ++i)
{
Microsoft::WRL::ComPtr<ICoreWebView2ExperimentalSensitivityLabel> sensitivityLabel;
CHECK_FAILURE(labelCollection->GetValueAtIndex(i, &sensitivityLabel));
COREWEBVIEW2_SENSITIVITY_LABEL_KIND labelKind;
CHECK_FAILURE(sensitivityLabel->get_LabelKind(&labelKind));
if (labelKind == COREWEBVIEW2_SENSITIVITY_LABEL_KIND_MIP)
{
Microsoft::WRL::ComPtr<ICoreWebView2ExperimentalMipSensitivityLabel> mipLabel;
if (SUCCEEDED(sensitivityLabel.As(&mipLabel)))
{
wil::unique_cotaskmem_string labelId;
wil::unique_cotaskmem_string organizationId;
CHECK_FAILURE(mipLabel->get_LabelId(&labelId));
CHECK_FAILURE(mipLabel->get_OrganizationId(&organizationId));
// Store the label id and organization id as a pair. Can be used
// to query Purview for the allowed rights on the document
labelInfos.emplace_back(
std::wstring(labelId.get()), std::wstring(organizationId.get()));
}
}
}
return labelInfos;
}
get_SensitivityLabelsState
Gets the current state of sensitivity label detection.
public HRESULT get_SensitivityLabelsState(COREWEBVIEW2_SENSITIVITY_LABELS_STATE * value)
Refer COREWEBVIEW2_SENSITIVITY_LABELS_STATE for different states.