in dialogflow-cx/vpc-sc-demo/frontend/src/PrivacyPolicy.js [19:129]
function PrivacyPolicyPage(props) {
const openSourceAndPubliclyViewable = (
<Link
target="_blank"
href="https://github.com/GoogleCloudPlatform/contact-center-ai-samples/tree/main/dialogflow-cx/vpc-sc-demo"
variant="body1"
>
Open Source and publicly viewable
</Link>
);
const AccessToken = (
<Link
target="_blank"
href="https://developers.google.com/identity/protocols/oauth2"
variant="body1"
>
Access Token
</Link>
);
const AccessTokenScope = (
<Link
target="_blank"
href="https://www.googleapis.com/auth/cloud-platform"
variant="body1"
>
cloud-platform
</Link>
);
const launchPadLink = (
<Link
style={{cursor: 'pointer'}}
onClick={() => {
props.dataModel.activePage.set('liveDemo');
}}
>
Live Demo "Launch Pad"
</Link>
);
return (
<>
<Typography variant="h4" sx={{my: 3}} id="privacyPolicy">
Privacy Policy
</Typography>
<Typography paragraph>
This demo app is built and maintained by the Developer Enablement
Engineering Team at Google Cloud, but is not an official Google Project.
When you use this service, you are entrusting us with your data, and we
take that responsibility very seriously. This site collects some data as
you explore the demo via cookies. But no identifying information is
collected or stored. There is an option to "Log In" with your
Google identity using OAuth to access the advanced features of the demo,
but this additional data is only stored for a short period of time
(maximum 60 minutes). All the source code for this website is{' '}
{openSourceAndPubliclyViewable}, but to summarize:
</Typography>
<Typography variant="h5" sx={{mx: 2, my: 1}} id="privacyPolicyCookies">
Cookies:
</Typography>
<Typography paragraph sx={{mx: 2, mb: 1}}>
This website uses cookies in two ways:
</Typography>
<Typography paragraph sx={{mx: 4, mb: 1}}>
1) To keep track of the total number of unique visitors. This
information is anonymous when it is collected, and only used in the
aggregate to help us better understand what parts of the site are the
most interesting and helpful to the users.
</Typography>
<Typography paragraph sx={{mx: 4}}>
2) When a user "Logs In" via OAuth, a session cookie is stored
in your browser. This cookie is a unique identifier that enables the
website to issue commands to Google Cloud APIs. This data expires after
60 minutes, and is not used for tracking or analytics.
</Typography>
<Typography variant="h5" sx={{mx: 2, my: 1}} id="privacyPolicyTokens">
Access Tokens:
</Typography>
<Typography paragraph sx={{mx: 2}}>
If you authenticate your identity using OAuth with your Google identity
(i.e. "Log in"), you will authorize an {AccessToken} with{' '}
{AccessTokenScope} scope to be temporarily stored. This non-renewable
token is deleted after 60 minutes, and is used to deploy and remove
several pre-defined cloud resources.
</Typography>
<Typography paragraph sx={{mx: 2}}>
If the token expires while you are still exploring (or you log out), it
will be immediately deleted and you will be prompted to reauthorize the
service. Although your access token is temporarily stored, it is stored
in an RSA-encrypted format, so that only you can use your token on the{' '}
{launchPadLink}.
</Typography>
<Typography variant="h5" sx={{mx: 2, my: 1}} id="privacyPolicyStorage">
Data Storage:
</Typography>
<Typography paragraph sx={{mx: 2}}>
Access Tokens are stored in a secure, private Google Cloud Storage
bucket, in an encrypted form, and is deleted after 60 minutes, and
session ids are never stored. Anonymous visit ids are permanently stored
in a Google BigQuery, but cannot be correlated to user visits or user
data.
</Typography>
<Typography variant="h5" sx={{mx: 2, my: 1}} id="privacyPolicyContact">
Contact Us:
</Typography>
<Typography paragraph sx={{mx: 2}}>
If you have any questions regarding our Privacy Policy, please contact
us at: webmaster@dialogflow-demo.app.
</Typography>
</>
);
}