
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
        <title><![CDATA[ The Cloudflare Blog ]]></title>
        <description><![CDATA[ Get the latest news on how products at Cloudflare are built, technologies used, and join the teams helping to build a better Internet. ]]></description>
        <link>https://blog.cloudflare.com</link>
        <atom:link href="https://blog.cloudflare.com/" rel="self" type="application/rss+xml"/>
        <language>en-us</language>
        <image>
            <url>https://blog.cloudflare.com/favicon.png</url>
            <title>The Cloudflare Blog</title>
            <link>https://blog.cloudflare.com</link>
        </image>
        <lastBuildDate>Mon, 06 Apr 2026 14:18:14 GMT</lastBuildDate>
        <item>
            <title><![CDATA[Open-sourcing OpenPubkey SSH (OPKSSH): integrating single sign-on with SSH]]></title>
            <link>https://blog.cloudflare.com/open-sourcing-openpubkey-ssh-opkssh-integrating-single-sign-on-with-ssh/</link>
            <pubDate>Tue, 25 Mar 2025 13:00:00 GMT</pubDate>
            <description><![CDATA[ OPKSSH (OpenPubkey SSH) is now open-sourced as part of the OpenPubkey project. ]]></description>
            <content:encoded><![CDATA[ <p>OPKSSH makes it easy to <a href="https://en.wikipedia.org/wiki/Secure_Shell"><u>SSH</u></a> with single sign-on technologies like OpenID Connect, thereby removing the need to manually manage and configure SSH keys. It does this without adding a trusted party other than your identity provider (IdP).</p><p>We are excited to announce <a href="https://github.com/openpubkey/opkssh/"><u>OPKSSH (OpenPubkey SSH)</u></a> has been open-sourced under the umbrella of the OpenPubkey project. While the underlying protocol <a href="https://github.com/openpubkey/openpubkey/"><u>OpenPubkey</u></a> became <a href="https://www.linuxfoundation.org/press/announcing-openpubkey-project"><u>an open source Linux foundation project in 2023</u></a>, OPKSSH was closed source and owned by <a href="https://www.cloudflare.com/press-releases/2024/cloudflare-acquires-bastionzero-to-add-zero-trust-infrastructure-access/"><u>BastionZero (now Cloudflare)</u></a>. Cloudflare has gifted this code to the OpenPubkey project, making it open source.</p><p>In this post, we describe what OPKSSH is, how it simplifies SSH management, and what OPKSSH being open source means for you.</p>
    <div>
      <h2>Background</h2>
      <a href="#background">
        
      </a>
    </div>
    <p>A cornerstone of modern access control is single sign-on <a href="https://www.cloudflare.com/learning/access-management/what-is-sso/"><u>(SSO)</u></a>, where a user authenticates to an <a href="https://www.cloudflare.com/learning/access-management/what-is-an-identity-provider/"><u>identity provider (IdP)</u></a>, and in response the IdP issues the user a <i>token</i>. The user can present this token to prove their identity, such as “Google says I am Alice”. SSO is the rare security technology that both increases convenience — users only need to sign in once to get access to many different systems — and increases security.</p>
    <div>
      <h3>OpenID Connect</h3>
      <a href="#openid-connect">
        
      </a>
    </div>
    <p><a href="https://openid.net/developers/how-connect-works/"><u>OpenID Connect (OIDC)</u></a> is the main protocol used for SSO. As shown below, in OIDC the IdP, called an OpenID Provider (OP), issues the user an ID Token which contains identity claims about the user, such as “email is alice@example.com”. These claims are digitally signed by the OP, so anyone who receives the ID Token can check that it really was issued by the OP.</p><p>Unfortunately, while ID Tokens <i>do </i>include identity claims like name, organization, and email address, they <i>do not</i> include the user’s public key. This prevents them from being used to directly secure protocols like SSH or <a href="https://www.cloudflare.com/learning/privacy/what-is-end-to-end-encryption/"><u>End-to-End Encrypted messaging</u></a>.</p><p>Note that throughout this post we use the term OpenID Provider (OP) rather than IdP, as OP specifies the exact type of IdP we are using, i.e., an OpenID IdP. We use Google as an example OP, but OpenID Connect works with Google, Azure, Okta, etc.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2zfixdknoL3a9HqBzcsmAY/605f469bdd25b4b8cfaf29dac3561c4f/image1.png" />
          </figure><p><sup><i>Shows a user Alice signing in to Google using OpenID Connect and receiving an ID Token</i></sup></p>
    <div>
      <h3>OpenPubkey</h3>
      <a href="#openpubkey">
        
      </a>
    </div>
    <p>OpenPubkey, shown below, adds public keys to ID Tokens. This enables ID Tokens to be used like certificates, e.g. “Google says <code>alice@example.com</code> is using public key 0x123.” We call an ID token that contains a public key a <i>PK Token</i>. The beauty of OpenPubkey is that, unlike other approaches, OpenPubkey does not require any changes to existing SSO protocols and supports any OpenID Connect compliant OP.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2HNkaW8vPE26KQrNwNOzNo/ef00f91dc983f3f2ac3c3a00b223b3e5/image3.png" />
          </figure><p><sup><i>Shows a user Alice signing in to Google using OpenID Connect/OpenPubkey and then producing a PK Token</i></sup>
While OpenPubkey enables ID Tokens to be used as certificates, OPKSSH extends this functionality so that these ID Tokens can be used as SSH keys in the SSH protocol. This adds SSO authentication to SSH without requiring changes to the SSH protocol.</p>
    <div>
      <h2>Why this matters</h2>
      <a href="#why-this-matters">
        
      </a>
    </div>
    <p>OPKSSH frees users and administrators from the need to manage long-lived SSH keys, making SSH more secure and more convenient.</p><blockquote><p><i>“In many organizations – even very security-conscious organizations – there are many times more obsolete authorized keys than they have employees. Worse, authorized keys generally grant command-line shell access, which in itself is often considered privileged. We have found that in many organizations about 10% of the authorized keys grant root or administrator access. SSH keys never expire.”</i>  
- <a href="https://ylonen.org/papers/ssh-key-challenges.pdf">Challenges in Managing SSH Keys – and a Call for Solutions</a> by Tatu Ylonen (Inventor of SSH)</p></blockquote><p>In SSH, users generate a long-lived SSH public key and SSH private key. To enable a user to access a server, the user or the administrator of that server configures that server to trust that user’s public key. Users must protect the file containing their SSH private key. If the user loses this file, they are locked out. If they copy their SSH private key to multiple computers or back up the key, they increase the risk that the key will be compromised. When a private key is compromised or a user no longer needs access, the user or administrator must remove that public key from any servers it currently trusts. All of these problems create headaches for users and administrators.</p><p>OPKSSH overcomes these issues:</p><p><b>Improved security:</b> OPKSSH replaces long-lived SSH keys with ephemeral SSH keys that are created on-demand by OPKSSH and expire when they are no longer needed. This reduces the risk a private key is compromised, and limits the time period where an attacker can use a compromised private key. By default, these OPKSSH public keys expire every 24 hours, but the expiration policy can be set in a configuration file.</p><p><b>Improved usability:</b> Creating an SSH key is as easy as signing in to an OP. This means that a user can SSH from any computer with opkssh installed, even if they haven’t copied their SSH private key to that computer.</p><p>To generate their SSH key, the user simply runs opkssh login, and they can use ssh as they typically do.</p><p><b>Improved visibility:</b> OPKSSH moves SSH from authorization by public key to authorization by identity. If Alice wants to give Bob access to a server, she doesn’t need to ask for his public key, she can just add Bob’s email address bob@example.com to the OPKSSH authorized users file, and he can sign in. This makes tracking who has access much easier, since administrators can see the email addresses of the authorized users.</p><p>OPKSSH does not require any code changes to the SSH server or client. The only change needed to SSH on the SSH server is to add two lines to the SSH config file. For convenience, we provide an installation script that does this automatically, as seen in the video below.</p><div>
  
</div>
<p></p>
    <div>
      <h2>How it works</h2>
      <a href="#how-it-works">
        
      </a>
    </div>
    
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5rVAtbu3vv9wU84ke8IZIb/a5e564c2ae3834391bd7f04c843508b7/image4.png" />
          </figure><p><sup><i>Shows a user Alice SSHing into a server with her PK Token inside her SSH public key. The server then verifies her SSH public key using the OpenPubkey verifier.</i></sup></p><p>Let’s look at an example of Alice (<code>alice@example.com</code>) using OPKSSH to SSH into a server:</p><ul><li><p>Alice runs <code>opkssh login</code>. This command automatically generates an ephemeral public key and private key for Alice. Then it runs the OpenPubkey protocol by opening a browser window and having Alice log in through their SSO provider, e.g., Google. </p></li><li><p>If Alice SSOs successfully, OPKSSH will now have a PK Token that commits to Alice’s ephemeral public key and Alice’s identity. Essentially, this PK Token says “<code>alice@example.com</code> authenticated her identity and her public key is 0x123…”.</p></li><li><p>OPKSSH then saves to Alice’s <code>.ssh </code>directory:</p><ul><li><p>an SSH public key file that contains Alice’s PK Token </p></li><li><p>and an SSH private key set to Alice’s ephemeral private key.</p></li></ul></li><li><p>When Alice attempts to SSH into a server, the SSH client will find the SSH public key file containing the PK Token in Alice’s <code>.ssh</code> directory, and it will send it to the SSH server to authenticate.</p></li><li><p>The SSH server forwards the received SSH public key to the OpenPubkey verifier installed on the SSH server. This is because the SSH server has been configured to use the OpenPubkey verifier via the AuthorizedKeysCommand.</p></li><li><p>The OpenPubkey verifier receives the SSH public key file and extracts the PK Token from it. It then verifies that the PK Token is unexpired, valid, signed by the OP and that the public key in the PK Token matches the public key field in the SSH public key file. Finally, it extracts the email address from the PK Token and checks if <code>alice@example.com</code> is allowed to SSH into this server.</p></li></ul><p>Consider the problems we face in getting OpenPubkey to work with SSH without requiring any changes to the SSH protocol or software:</p><p><b>How do we get the PK Token from the user’s machine to the SSH server inside the SSH protocol?</b>
We use the fact that SSH public keys can be SSH certificates, and that SSH certificates have <a href="https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/PROTOCOL.certkeys?rev=1.4&amp;content-type=text/x-cvsweb-markup"><u>an extension field</u></a> that allows arbitrary data to be included in the certificate. Thus, we package the PK Token into an SSH certificate extension so that the PK Token will be transmitted inside the SSH public key as a normal part of the SSH protocol. This enables us to send the PK Token to the SSH server as additional data in the SSH certificate, and allows OPKSSH to work without any changes to the SSH client.</p><p><b>How do we check that the PK Token is valid once it arrives at the SSH server?
</b>SSH servers support a configuration parameter called the <a href="https://man.openbsd.org/sshd_config#AuthorizedKeysCommand"><i><u>AuthorizedKeysCommand</u></i></a><i> </i>that allows us to use a custom program to determine if an SSH public key is authorized or not. Thus, we change the SSH server’s config file to use the OpenPubkey verifier instead of the SSH verifier by making the following two line change to <code>sshd_config</code>:</p>
            <pre><code>AuthorizedKeysCommand /usr/local/bin/opkssh verify %u %k %t
AuthorizedKeysCommandUser root</code></pre>
            <p>The OpenPubkey verifier will check that the PK Token is unexpired, valid and signed by the OP. It checks the user’s email address in the PK Token to determine if the user is authorized to access the server.</p><p><b>How do we ensure that the public key in the PK Token is actually the public key that secures the SSH session?</b>
The OpenPubkey verifier also checks that the public key in the public key field in the SSH public key matches the user’s public key inside the PK Token. This works because the public key field in the SSH public key is the actual public key that secures the SSH session.</p>
    <div>
      <h2>What is happening</h2>
      <a href="#what-is-happening">
        
      </a>
    </div>
    <p>We have <a href="https://github.com/openpubkey/openpubkey/pull/234"><u>open sourced OPKSSH</u></a> under the <a href="https://www.apache.org/licenses/LICENSE-2.0"><u>Apache 2.0 license</u></a>, and released it as <a href="https://github.com/openpubkey/opkssh/"><u>openpubkey/opkssh on GitHub</u></a>. While the OpenPubkey project has had code for using SSH with OpenPubkey since the early days of the project, this code was intended as a prototype and was missing many important features. With OPKSSH, SSH support in OpenPubkey is no longer a prototype and is now a complete feature. Cloudflare is not endorsing OPKSSH, but simply donating code to OPKSSH.</p><p><b>OPKSSH provides the following improvements to OpenPubkey:</b></p><ul><li><p>Production ready SSH in OpenPubkey</p></li><li><p>Automated installation</p></li><li><p>Better configuration tools</p></li></ul>
    <div>
      <h2>To learn more</h2>
      <a href="#to-learn-more">
        
      </a>
    </div>
    <p>See the <a href="https://github.com/openpubkey/opkssh/blob/main/README.md"><u>OPKSSH readme</u></a> for documentation on how to install and connect using OPKSSH.</p>
    <div>
      <h2>How to get involved</h2>
      <a href="#how-to-get-involved">
        
      </a>
    </div>
    <p>There are a number of ways to get involved in OpenPubkey or OPKSSH. The project is organized through the <a href="https://github.com/openpubkey/opkssh"><u>OPKSSH GitHub</u></a>. We are building an open and friendly community and welcome pull requests from anyone. If you are interested in contributing, see <a href="https://github.com/openpubkey/openpubkey/blob/main/CONTRIBUTING.md"><u>our contribution guide</u></a>.</p><p>We run a <a href="https://github.com/openpubkey/community"><u>community</u></a> meeting every month which is open to everyone, and you can also find us over on the <a href="https://openssf.org/getinvolved/"><u>OpenSSF Slack</u></a> in the #openpubkey channel.</p> ]]></content:encoded>
            <category><![CDATA[Open Source]]></category>
            <category><![CDATA[SSH]]></category>
            <category><![CDATA[Single Sign On (SSO)]]></category>
            <category><![CDATA[Cryptography]]></category>
            <category><![CDATA[Authentication]]></category>
            <category><![CDATA[Research]]></category>
            <guid isPermaLink="false">01zA7RtUKkhrUeINJ9AIS3</guid>
            <dc:creator>Ethan Heilman</dc:creator>
        </item>
        <item>
            <title><![CDATA[Password reuse is rampant: nearly half of observed user logins are compromised]]></title>
            <link>https://blog.cloudflare.com/password-reuse-rampant-half-user-logins-compromised/</link>
            <pubDate>Mon, 17 Mar 2025 13:00:00 GMT</pubDate>
            <description><![CDATA[ Nearly half of observed login attempts across websites protected by Cloudflare involved leaked credentials. The pervasive issue of password reuse is enabling automated bot attacks on a massive scale. ]]></description>
            <content:encoded><![CDATA[ <p>Accessing private content online, whether it's checking email or streaming your favorite show, almost always starts with a “login” step. Beneath this everyday task lies a widespread human mistake we still have not resolved:<b> password reuse. </b>Many users recycle passwords across multiple services, creating a ripple effect of risk when their credentials are leaked.</p><p>Based on Cloudflare's observed traffic between September - November 2024,<b> 41% of successful logins across websites protected by Cloudflare involve compromised passwords. </b>In this post, we’ll explore the widespread impact of password reuse, focusing on how it affects popular Content Management Systems (CMS), the behavior of bots versus humans in login attempts, and how attackers exploit stolen credentials to take over accounts at scale.</p>
    <div>
      <h3>Scope of the analysis</h3>
      <a href="#scope-of-the-analysis">
        
      </a>
    </div>
    <p>As part of our <a href="https://www.cloudflare.com/application-services/solutions/">Application Security</a> offering, we offer a free feature that checks if a password has been leaked in a known data breach of another service or application on the Internet. When we perform these checks, Cloudflare does not access or store plaintext end user passwords. We have built a privacy-preserving credential checking service that helps protect our users from compromised credentials. <a href="https://blog.cloudflare.com/helping-keep-customers-safe-with-leaked-password-notification/#how-does-cloudflare-check-for-leaked-credentials"><u>Passwords are hashed – i.e., converted into a random string of characters using a cryptographic algorithm – for the purpose of comparing them against a database of leaked credentials.</u></a> This not only warns site owners that their end users’ credentials may be compromised; it also allows site owners to issue a password reset or enable MFA. These protections help prevent attacks that use automated attempts to guess information, like usernames and passwords, to gain access to a system or network. Read more on how our leaked credentials detection scans work <a href="https://developers.cloudflare.com/waf/detections/leaked-credentials/"><u>here</u></a>.</p><p>Our data analysis focuses on traffic from Internet properties on <a href="https://www.cloudflare.com/plans/free/">Cloudflare’s free plan</a>, which includes <a href="https://developers.cloudflare.com/waf/detections/leaked-credentials/"><u>leaked credentials detection</u></a> as a built-in feature. Leaked credentials refer to usernames and passwords exposed in known data breaches or credential dumps — for this analysis, our focus is specifically on leaked passwords. With 30 million Internet properties, <a href="https://w3techs.com/technologies/overview/proxy/all"><u>comprising some 20% of the web</u></a>, behind Cloudflare, this analysis provides significant insights. The data primarily reflects trends observed after the detection system was launched during <a href="https://blog.cloudflare.com/a-safer-internet-with-cloudflare/"><u>Birthday Week</u></a> in September 2024.</p>
    <div>
      <h3>Nearly 41% of logins are at risk</h3>
      <a href="#nearly-41-of-logins-are-at-risk">
        
      </a>
    </div>
    <p>One of the biggest challenges in authentication is distinguishing between legitimate human users and malicious actors. To understand human behavior, we focus on successful login attempts (those returning a <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200"><u>200 OK</u></a> status code), as this provides the clearest indication of user activity and real account risk. Our data reveals that approximately 41% of successful human authentication attempts involve leaked credentials.</p><p>Despite growing awareness about online security, a significant portion of users continue to reuse passwords across multiple accounts. And according to a <a href="https://www.forbes.com/advisor/business/software/american-password-habits/"><u>recent study by Forbes</u></a>, users will, on average, reuse their password across four different accounts. Even after major breaches, many individuals don’t change their compromised passwords, or still use variations of them across different services. For these users, it’s not a matter of “if” attackers will use their compromised passwords, it’s a matter of “when”.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/71DMUKH3ZzY1hr0bsavGj3/16eed591ce9b34fd4aead27746a85acf/image4.png" />
          </figure><p>When we expand to include bot-driven traffic in this analysis, the problem of leaked credentials becomes even more noticeable. Our data reveals that 52% of all detected authentication requests contain leaked passwords found in our database of over 15 billion records, including the <a href="https://haveibeenpwned.com/"><u>Have I Been Pwned</u></a> (HIBP) leaked password dataset.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4yKNn90DQQTS0j9MjpJ3AT/07513fa7c81f3a37a5f30db4798c9955/image1.png" />
          </figure><p>This percentage represents hundreds of millions of daily authentication requests, originating from both bots and humans. While not every attempt succeeds, the sheer volume of leaked credentials in real-world traffic illustrates how common password reuse is. Many of these leaked credentials still grant valid access, amplifying the risk of account takeovers.</p>
    <div>
      <h3>Attackers heavily use leaked password datasets</h3>
      <a href="#attackers-heavily-use-leaked-password-datasets">
        
      </a>
    </div>
    <p>Bots are the driving force behind <a href="https://www.cloudflare.com/learning/bots/what-is-credential-stuffing/"><u>credential-stuffing</u></a> attacks, the data indicates that<b> </b>95% of login attempts involving leaked passwords are coming from bots,<b> </b>indicating that they are part of credential stuffing attacks.</p><p>Equipped with credentials stolen from breaches, bots systematically target websites at scale, testing thousands of login combinations in seconds.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7rjFwHf1vwRE43M2JuNWkI/2147f2dfaa04f06ae4e75d1ad05232d2/image5.png" />
          </figure><p>Data from the Cloudflare network exposes this trend, showing that bot-driven attacks remain alarmingly high over time. Popular platforms like WordPress, Joomla, and Drupal are frequent targets, due to their widespread use and exploitable vulnerabilities, as we will explore in the upcoming section.</p><p>Once bots successfully breach one account, attackers reuse the same credentials across other services to amplify their reach. They even sometimes try to evade detection by using sophisticated evasion tactics, such as spreading login attempts across different source IP addresses or mimicking human behavior, attempting to blend into legitimate traffic.</p><p>The result is a constant, automated threat vector that challenges traditional security measures and exploits the weakest link: password reuse.</p>
    <div>
      <h3>Brute force attacks against WordPress</h3>
      <a href="#brute-force-attacks-against-wordpress">
        
      </a>
    </div>
    <p>Content Management Systems (CMS) are used to build websites, and often rely on simple authentication and login plugins. This is convenient, but also makes them frequent targets of credential stuffing attacks due to their widespread adoption. WordPress is a very popular content management system with a well known user login page format. Because of this, websites built on WordPress often become common targets for attackers.</p><p>Across our network, WordPress accounts for a significant portion of authentication requests. This is unsurprising given its <a href="https://w3techs.com/technologies/details/cm-wordpress"><u>market share</u></a>. However, what stands out is the alarming number of successful logins using leaked passwords, especially by bots.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3fJWsdEZJ9bo5eYbH9A35w/ed6a805386ef406565be08bdff5260b9/image3.png" />
          </figure><p><b>76% of leaked password login attempts for websites built on WordPress are successful.</b>

Of these, 48% of successful logins are bot-driven.<b> </b>This is a shocking figure that indicates nearly half of all successful logins are executed by unauthorized systems designed to exploit stolen credentials. Successful unauthorized access is often the first step in <a href="https://www.cloudflare.com/zero-trust/solutions/account-takeover-prevention/">account takeover (ATO) attacks</a>.</p><p>The remaining 52% of successful logins originate from legitimate, non-bot users. This figure, higher than the average of 41% across all platforms, highlights how pervasive password reuse is among real users, putting their accounts at significant risk.</p><p><b>Only 5% of leaked password login attempts result in access being denied.</b></p><p>This is a low number compared to the successful bot-driven login attempts, and could be tied to a lack of security measures like <a href="https://www.cloudflare.com/learning/bots/what-is-rate-limiting/"><u>rate-limiting</u></a> or <a href="https://www.cloudflare.com/learning/access-management/what-is-multi-factor-authentication/"><u>multi-factor authentication (MFA)</u></a>. If such measures were in place, we would expect the share of denied attempts to be higher. Notably, 90% of these denied requests are bot-driven, reinforcing the idea that while some security measures are blocking automated logins, many still slip through.</p><p>The overwhelming presence of bot traffic in this category points to ongoing automated attempts to brute-force access.</p><p>The <b>remaining 19%</b> of login attempts fall under other outcomes, such as timeouts, incomplete logins, or users who changed their passwords, so they neither count as direct “successes” nor do they register as “denials”.</p>
    <div>
      <h3>Keeping user accounts safe with Cloudflare</h3>
      <a href="#keeping-user-accounts-safe-with-cloudflare">
        
      </a>
    </div>
    <p>If you're a user, start with changing reused or weak passwords and use unique, strong ones for each website or application. Enable <u>multi-factor authentication (MFA)</u> on all of your accounts that support it, and start exploring passkeys as a more secure, phishing-resistant alternative to traditional passwords.</p><p>For website owners, activate <a href="https://developers.cloudflare.com/waf/detections/leaked-credentials/"><u>leaked credentials detection</u></a> to monitor and address these threats in real time and issue password reset flows on leaked credential matches.</p><p>Additionally, enable features like <a href="https://www.cloudflare.com/application-services/products/rate-limiting/"><u>Rate Limiting</u></a> and <a href="https://www.cloudflare.com/application-services/products/bot-management/"><u>Bot Management</u></a> tools to minimize the impact of automated attacks. Audit password reuse patterns, identify leaked credentials within your systems, and enforce robust password hygiene policies to strengthen overall security.</p><p>By adopting these measures, both individuals and organizations can stay ahead of attackers and build stronger defenses.</p> ]]></content:encoded>
            <category><![CDATA[Security Week]]></category>
            <category><![CDATA[Authentication]]></category>
            <category><![CDATA[Account Takeover]]></category>
            <category><![CDATA[Password-reuse]]></category>
            <category><![CDATA[Statistics]]></category>
            <category><![CDATA[Bots]]></category>
            <guid isPermaLink="false">NeRK5xA5mn6uOY47obLsr</guid>
            <dc:creator>Radwa Radwan</dc:creator>
            <dc:creator>Sabina Zejnilovic</dc:creator>
        </item>
        <item>
            <title><![CDATA[Announcing Access Temporary Authentication]]></title>
            <link>https://blog.cloudflare.com/announcing-access-temporary-authentication/</link>
            <pubDate>Mon, 04 Oct 2021 12:58:56 GMT</pubDate>
            <description><![CDATA[ Starting today, you can add new policies in Cloudflare Access that grant temporary access to specific users based on approvals for a set of predefined administrators. ]]></description>
            <content:encoded><![CDATA[ <p>Zero Trust rules by default block attempts to reach a resource. To obtain access, users need to prove they should be allowed to connect using signals like their identity, their device health, and other factors.</p><p>However, some workflows need a second opinion. Starting today, you can add new policies in Cloudflare Access that grant temporary access to specific users based on approvals for a set of predefined administrators. You can decide that some applications need second-party approval in addition to other Zero Trust signals. We’re excited to give your team another layer of <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/">Zero Trust control</a> for any application — whether it’s a popular SaaS tool or you host it yourself.</p>
    <div>
      <h3>Why temporary authentication?</h3>
      <a href="#why-temporary-authentication">
        
      </a>
    </div>
    <p>Configuring appropriate user access is a challenge. Most companies start granting employee-specific application access based on username or email. This requires manual provisioning and deprovisioning when an employee joins or leaves.</p><p>When this becomes unwieldy, security teams generally use identity provider groups to set access levels by employee role. Which allows better provisioning and deprovisioning, but again starts to get clunky when application access requirements do not conform around roles. If a specific support rep needs access, then they need to be added to an existing group (for example, engineering) or a new group needs to be created (for example, specfic_support_reps). Even if that new team member only needed temporary access, it is unlikely they were ever removed from the identity group they were added to. This leads to overprovisioned and unnecessary groups in your identity provider.</p><p>In most cases, there are two sets of application users — those that access every day to do their jobs and those that need specific access periodically. We wanted to make it possible to give these periodic users temporary access to applications. Additionally, some services are so sensitive that every user should only have temporary access, for example in the case of production database access.</p>
    <div>
      <h3>Starting with Purpose Justification</h3>
      <a href="#starting-with-purpose-justification">
        
      </a>
    </div>
    <p>Cloudflare Access starts solving this problem by allowing security administrators to collect a business reason for accessing a specific application. This provides an audit trail and a prompt to remind users that they should only connect to the resource with a good reason. However, the feature does actively stop a user from accessing something.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/49Dzxn2vfXt5TM1pQl0WGb/7e47e30a32de7c8388ea4dc12020d1b6/image2-7.png" />
            
            </figure>
    <div>
      <h3>Added control with Temporary Authentication</h3>
      <a href="#added-control-with-temporary-authentication">
        
      </a>
    </div>
    <p>As part of this release, we have extended Purpose Justification with Temporary Access to introduce scoped permissions and second approval requirements. Now a user’s Purpose Justification, along with location and IP address, will be sent to a preconfigured list of approvers who can then either approve or deny a user’s access request, or grant access for a set amount of time.</p><p>This allows security teams to avoid over-provisioning sensitive applications without also creating bottlenecks on a few key individuals in their organization with access to sensitive tools. Better yet, all of these requests and approvals are logged for regulatory and investigative purposes.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/VxW1iLh2abM6HVxuJhYx2/b175eb976291bcc3581a0c49d6b9d4c9/image1-9.png" />
            
            </figure><p>When the user’s session expires, they need to repeat the process if they need access again. If you have a group of users who should always be allowed to reach a resource, without second approval, you can define groups that are allowed to skip this step.</p><p>Purpose Justification and Temporary Access were both built using Cloudflare Workers. This means both user access requests and administrator access reviews are rendered from the closest data center to the user. You could request access to an application from an approver across the world with virtually no latency.</p><p>Workers also allowed us to be very flexible when Temporary Authentication is required. As an example, the same user who normally has persistent access to an application can be required to request access when connecting from a personal device or when visiting a high-risk country.</p>
    <div>
      <h3>How to get started</h3>
      <a href="#how-to-get-started">
        
      </a>
    </div>
    <p>To get started with Temporary Authentication in Cloudflare Access, go to the Teams Dashboard and create an Access application. Within the Application's Zero Trust policy, you can configure when you want to allow for temporary authentication with human approval. For more detailed information, you can refer to our developer docs.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Authentication]]></category>
            <guid isPermaLink="false">7o7dPqwAiGjSsBFizf9hDg</guid>
            <dc:creator>Kenny Johnson</dc:creator>
        </item>
        <item>
            <title><![CDATA[Helping build the next generation of privacy-preserving protocols]]></title>
            <link>https://blog.cloudflare.com/next-generation-privacy-protocols/</link>
            <pubDate>Tue, 08 Dec 2020 12:00:00 GMT</pubDate>
            <description><![CDATA[ Today, we’re making several announcements around improving Internet protocols with respect to something important to our customers and Internet users worldwide: privacy. ]]></description>
            <content:encoded><![CDATA[ 
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3KjEAqn2Lizr1zW42YzTU4/6492bcae03200a5c1688671ecc3b6291/Privacy-protocols-2.png" />
            
            </figure><p>Over the last ten years, Cloudflare has become an important part of Internet infrastructure, powering websites, APIs, and web services to help make them more secure and efficient. The Internet is growing in terms of its capacity and the number of people using it and evolving in terms of its design and functionality. As a player in the Internet ecosystem, Cloudflare has a responsibility to help the Internet grow in a way that respects and provides value for its users. Today, we’re making several announcements around improving Internet protocols with respect to something important to our customers and Internet users worldwide: privacy.</p><p>These initiatives are:</p><ul><li><p>Fixing one of the last information leaks in HTTPS through <a href="/encrypted-client-hello"><b>Encrypted Client Hello (ECH)</b></a><b>,</b> previously known as <a href="/encrypted-sni/">Encrypted SNI</a></p></li><li><p>Making <a href="https://www.cloudflare.com/learning/dns/what-is-dns/">DNS</a> even more private by supporting <a href="/oblivious-dns"><b>Oblivious DNS-over-HTTPS (ODoH)</b></a></p></li><li><p>Developing a superior protocol for password authentication, <a href="/opaque-oblivious-passwords"><b>OPAQUE</b></a>, that makes password breaches less likely to occur</p></li></ul><p>Each of these projects impacts an aspect of the Internet that influences our online lives and digital footprints. Whether we know it or not, there is a lot of private information about us and our lives floating around online. This is something we can help fix.</p><p>For over a year, we have been working through standards bodies like the IETF and partnering with the biggest names in Internet technology (including Mozilla, Google, Equinix, and more) to design, deploy, and test these new privacy-preserving protocols at Internet scale. Each of these three protocols touches on a critical aspect of our online lives, and we expect them to help make real improvements to privacy online as they gain adoption.</p>
    <div>
      <h3>A continuing tradition at Cloudflare</h3>
      <a href="#a-continuing-tradition-at-cloudflare">
        
      </a>
    </div>
    <p>One of Cloudflare’s core missions is to support and develop technology that helps build a better Internet. As an industry, we’ve made exceptional progress in making the Internet more secure and robust. Cloudflare is proud to have played a part in this progress through multiple initiatives over the years.</p><p>Here are a few highlights:</p><ul><li><p><a href="/introducing-universal-ssl/"><b>Universal SSL</b></a>™. We’ve been one of the driving forces for encrypting the web. We launched Universal SSL in 2014 to give website encryption to our customers for free and have actively been working along with certificate authorities like Let’s Encrypt, web browsers, and website operators to help remove <a href="/tag/mixed-content-errors/">mixed content</a>. Before Universal SSL launched to give all Cloudflare customers HTTPS for free, only 30% of connections to websites were encrypted. Through the industry’s efforts, that number is now <a href="https://letsencrypt.org/stats/">80%</a> -- and a much more significant proportion of overall Internet traffic. Along with doing our part to encrypt the web, we have supported the Certificate Transparency project via <a href="/introducing-certificate-transparency-and-nimbus/">Nimbus</a> and <a href="https://ct.cloudflare.com/">Merkle Town</a>, which has improved accountability for the certificate ecosystem HTTPS relies on for trust.</p></li><li><p><b>TLS 1.3 and QUIC</b>. We’ve also been a proponent of upgrading existing security protocols. Take Transport Layer Security (TLS), the underlying protocol that secures HTTPS. Cloudflare engineers helped contribute to the design of TLS 1.3, the latest version of the standard, and <a href="/introducing-tls-1-3/">in 2016</a> we launched support for an early version of the protocol. This early deployment helped lead to improvements to the final version of the protocol. TLS 1.3 is now the most widely used encryption protocol on the web and a vital component of the <a href="/last-call-for-quic/">emerging QUIC standard</a>, of which we were also early adopters.</p></li><li><p><b>Securing Routing, Naming, and Time</b>. We’ve made major efforts to help secure other critical components of the Internet. Our efforts to help secure Internet routing through our <a href="/cloudflares-rpki-toolkit/">RPKI toolkit</a>, <a href="https://conferences.sigcomm.org/imc/2019/presentations/p221.pdf">measurement studies</a>, and “<a href="/is-bgp-safe-yet-rpki-routing-security-initiative/">Is BGP Safe Yet</a>” tool have significantly improved the Internet’s resilience against disruptive route leaks. Our time service (<a href="/secure-time/">time.cloudflare.com</a>) has helped keep people’s clocks in sync with more secure protocols like <a href="/nts-is-now-rfc/">NTS</a> and <a href="/roughtime/">Roughtime</a>. We’ve also made DNS more secure by supporting <a href="/dns-encryption-explained/">DNS-over-HTTPS and DNS-over-TLS</a> in 1.1.1.1 at launch, along with one-click DNSSEC in our <a href="/introducing-universal-dnssec/">authoritative DNS</a> service and <a href="/one-click-dnssec-with-cloudflare-registrar/">registrar</a>.</p></li></ul><p>Continuing to improve the security of the systems of trust online is critical to the Internet’s growth. However, there is a more fundamental principle at play: respect. The infrastructure underlying the Internet should be designed to respect its users.</p>
    <div>
      <h3>Building an Internet that respects users</h3>
      <a href="#building-an-internet-that-respects-users">
        
      </a>
    </div>
    <p>When you sign in to a specific website or service with a privacy policy, you know what that site is expected to do with your data. It’s explicit. There is no such visibility to the users when it comes to the operators of the Internet itself. You may have an agreement with your Internet Service Provider (ISP) and the site you’re visiting, but it’s doubtful that you even know which <a href="http://www.washingtonpost.com/graphics/national/security-of-the-internet/bgp">networks your data is traversing</a>. Most people don’t have a concept of the Internet beyond what they see on their screen, so it’s hard to imagine that people would accept or even understand what a privacy policy from a <a href="/the-relative-cost-of-bandwidth-around-the-world/">transit wholesaler</a> or an <a href="https://us-cert.cisa.gov/ncas/alerts/TA17-075A">inspection middlebox</a> would even mean.</p><p>Without encryption, Internet browsing information is implicitly shared with countless third parties online as information passes between networks. Without secure routing, users’ traffic can be hijacked and disrupted. Without privacy-preserving protocols, users’ online life is not as private as they would think or expect. The infrastructure of the Internet wasn’t built in a way that reflects their expectations.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7rjHEqRERPxkcFeoNRwfAX/37548cf8be78a4849c9a188c076ca483/image3.png" />
            
            </figure><p>Normal network flow</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/76hMzZSOArtOdRiTWCeXqH/b2063a3b7aef6e410f30efcbc242f4b6/image1-7.png" />
            
            </figure><p>Network flow with malicious route leak</p><p>The good news is that the Internet is continuously evolving. One of the groups that help guide that evolution is the Internet Architecture Board (IAB). The IAB provides architectural oversight to the Internet Engineering Task Force (IETF), the Internet’s main standard-setting body. The IAB recently published <a href="https://www.rfc-editor.org/rfc/rfc8890.html">RFC 8890</a>, which states that individual end-users should be prioritized when designing Internet protocols. It says that if there’s a conflict between the interests of end-users and the interest of service providers, corporations, or governments, IETF decisions should favor end users. One of the prime interests of end-users is the right to privacy, and the IAB published <a href="https://tools.ietf.org/html/rfc6973">RFC 6973</a> to indicate how Internet protocols should take privacy into account.</p><p>Today’s technical blog posts are about <b>improvements to the Internet designed to respect user privacy</b>. Privacy is a complex topic that spans multiple disciplines, so it’s essential to clarify what we mean by “improving privacy.” We are specifically talking about changing the protocols that handle privacy-sensitive information exposed “on-the-wire” and modifying them so that this data is exposed to fewer parties. This data continues to exist. It’s just no longer available or visible to third parties without building a mechanism to collect it at a higher layer of the Internet stack, the application layer. <i>These changes go beyond website encryption</i>; they go deep into the design of the systems that are foundational to making the Internet what it is.</p>
    <div>
      <h3>The toolbox: cryptography and secure proxies</h3>
      <a href="#the-toolbox-cryptography-and-secure-proxies">
        
      </a>
    </div>
    <p>Two tools for making sure data can be used without being seen are <i>cryptography</i> and <i>secure</i> <i>proxies</i>.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/71bC5CqEyrYCZ0RpSJGbHI/922ebc973778951111a1a1881b978e71/Cryptography-and-Secure-Proxies.png" />
            
            </figure><p>Cryptography allows information to be transformed into a format that a very limited number of people (those with the key) can understand. Some describe cryptography as a tool that transforms data security problems into key management problems. This is a humorous but fair description. Cryptography makes it easier to reason about privacy because only key holders can view data.</p><p>Another tool for protecting access to data is isolation/segmentation. By physically limiting which parties have access to information, you effectively build privacy walls. A popular architecture is to rely on policy-aware proxies to pass data from one place to another. Such proxies can be configured to strip sensitive data or block data transfers between parties according to what the privacy policy says.</p><p>Both these tools are useful individually, but they can be even more effective if combined. Onion routing (the cryptographic technique <a href="/cloudflare-onion-service/">underlying Tor</a>) is one example of how proxies and encryption can be used in tandem to enforce strong privacy. Broadly, if party A wants to send data to party B, they can encrypt the data with party B’s key and encrypt the metadata with a proxy’s key and send it to the proxy.</p><p>Platforms and services built on top of the Internet can build in consent systems, like privacy policies presented through user interfaces. The infrastructure of the Internet relies on layers of underlying protocols. Because these layers of the Internet are so far below where the user interacts with them, it’s almost impossible to build a concept of user consent. In order to respect users and protect them from privacy issues, the protocols that glue the Internet together should be designed with privacy enabled by default.</p>
    <div>
      <h3>Data vs. metadata</h3>
      <a href="#data-vs-metadata">
        
      </a>
    </div>
    <p>The transition from a mostly unencrypted web to an encrypted web has done a lot for end-user privacy. For example, the “<a href="https://codebutler.com/2010/10/24/firesheep/">coffeeshop stalker</a>” is no longer an issue for most sites. When accessing the majority of sites online, users are no longer broadcasting every aspect of their web browsing experience (search queries, browser versions, authentication cookies, etc.) over the Internet for any participant on the path to see. Suppose a site is configured correctly to use HTTPS. In that case, users can be confident their data is secure from onlookers and reaches only the intended party because their connections are both encrypted and authenticated.</p><p>However, HTTPS only protects the <i>content</i> of web requests. Even if you only browse sites over HTTPS, that doesn’t mean that your <i>browsing</i> <i>patterns</i> are private. This is because HTTPS fails to encrypt a critical aspect of the exchange: the metadata. When you make a phone call, the metadata is the phone number, not the call’s contents. Metadata is the data about the data.</p><p>To illustrate the difference and why it matters, here’s a diagram of what happens when you visit a website like an imageboard. Say you’re going to a specific page on that board (<a href="https://images.com/room101/">https://.com/room101/</a>) that has specific embedded images hosted on .com.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2WDSyOoFNRtXcGj5XXQC9p/b1c9ce791e8d84798b93782c97703c37/image5-2.png" />
            
            </figure><p>Page load for an imageboard, returning an HTML page with an image from an embarassing site</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6DvbyOK8cIcvblLUmPsQCl/c994c812f99f917e5ae4c86898da827c/image4.png" />
            
            </figure><p>Subresource fetch for the image from an embarassing site</p><p>The space inside the dotted line here represents the part of the Internet that your data needs to transit. They include your local area network or coffee shop, your ISP, an Internet transit provider, and it could be the network portion of the cloud provider that hosts the server. Users often don’t have a relationship with these entities or a contract to prevent these parties from doing anything with the user’s data. And even if those entities don’t look at the data, a well-placed observer intercepting Internet traffic could see anything sent unencrypted. It would be best if they just didn’t see it at all. In this example, the fact that the user visited .com can be seen by an observer, which is expected. However, though page content is encrypted, it’s possible to learn <i>which specific page you’ve visited</i> can be seen since .com is also visible.</p><p>It’s a general rule that if data is available to on-path parties on the Internet, some of these on-path parties will use this data. It’s also true that these on-path parties need some metadata in order to facilitate the transport of this data. This balance is explored in <a href="https://www.rfc-editor.org/rfc/rfc8558.html">RFC 8558</a>, which explains how protocols should be designed thoughtfully with respect to the balance between too much metadata (bad for privacy) and too little metadata (bad for operations).</p><p>In an ideal world, Internet protocols would be designed with the principle of least privilege. They would provide the minimum amount of information needed for the on-path parties (the pipes) to do the job of transporting the data to the right place and keep everything else confidential by default. Current protocols, including TLS 1.3 and QUIC, are important steps towards this ideal but fall short with respect to metadata privacy.</p>
    <div>
      <h3>Knowing both who you are and what you do online can lead to profiling</h3>
      <a href="#knowing-both-who-you-are-and-what-you-do-online-can-lead-to-profiling">
        
      </a>
    </div>
    <p>Today’s announcements reflect two metadata protection levels: the first involves limiting the amount of metadata available to third-party observers (like ISPs). The second involves restricting the amount of metadata that users share with service providers themselves.</p><p>Hostnames are an example of metadata that needs to be protected from third-party observers, which DoH and ECH intend to do. However, it doesn’t make sense to hide the hostname from the site you’re visiting. It also doesn’t make sense to hide it from a directory service like DNS. A DNS server needs to know which hostname you’re resolving to resolve it for you!</p><p>A privacy issue arises when a service provider knows about both what sites you’re visiting and who you are. Individual websites do not have this dangerous combination of information (except in the case of third party cookies, which <a href="https://www.cnbc.com/2020/01/14/google-chrome-to-end-support-for-third-party-cookies-within-two-years.html">are going away soon in browsers</a>), but DNS providers do. Thankfully, it’s not actually necessary for a DNS resolver to know *both* the hostname of the service you’re going to and which IP you’re coming from. Disentangling the two, which is the goal of ODoH, is good for privacy.</p>
    <div>
      <h3>The Internet is part of 'our' Infrastructure</h3>
      <a href="#the-internet-is-part-of-our-infrastructure">
        
      </a>
    </div>
    <p>Roads should be well-paved, well lit, have accurate signage, and be optimally connected. They aren't designed to stop a car based on who's inside it. Nor should they be! Like transportation infrastructure, Internet infrastructure is responsible for getting data where it needs to go, not looking inside packets, and making judgments. But the Internet is made of computers and software, and software tends to be written to make decisions based on the data it has available to it.</p><p>Privacy-preserving protocols attempt to eliminate the temptation for infrastructure providers and others to peek inside and make decisions based on personal data. A non-privacy preserving protocol like HTTP keeps data and metadata, like passwords, IP addresses, and hostnames, as explicit parts of the data sent over the wire. The fact that they are explicit means that they are available to any observer to collect and act on. A protocol like HTTPS improves upon this by making some of the data (such as passwords and site content) invisible on the wire using encryption.</p><p>The three protocols we are exploring today extend this concept.</p><ul><li><p><b>ECH</b> takes most of the unencrypted metadata in TLS (including the hostname) and encrypts it with a key that was fetched ahead of time.</p></li><li><p><b>ODoH</b> (a new variant of DoH co-designed by Apple, Cloudflare, and Fastly engineers) uses proxies and onion-like encryption to make the source of a DNS query invisible to the DNS resolver. This protects the user’s IP address when resolving hostnames.</p></li><li><p><b>OPAQUE</b> uses a new cryptographic technique to keep passwords hidden <b><i>even from the server</i></b>. Utilizing a construction called an Oblivious Pseudo-Random Function (as seen in <a href="/privacy-pass-the-math/">Privacy Pass</a>), the server does not learn the password; it only learns whether or not the user knows the password.</p></li></ul><p>By making sure Internet infrastructure acts more like physical infrastructure, user privacy is more easily protected. The Internet is more private if private data can only be collected where the user has a chance to consent to its collection.</p>
    <div>
      <h3>Doing it together</h3>
      <a href="#doing-it-together">
        
      </a>
    </div>
    <p>As much as we’re excited about working on new ways to make the Internet more private, innovation at a global scale doesn’t happen in a vacuum. Each of these projects is the output of a collaborative group of individuals working out in the open in organizations like the IETF and the IRTF. Protocols must come about through a consensus process that involves all the parties that make up the interconnected set of systems that power the Internet. From browser builders to cryptographers, from DNS operators to website administrators, this is truly a global team effort.</p><p>We also recognize that sweeping technical changes to the Internet will inevitably also impact the technical community. Adopting these new protocols may have legal and policy implications. We are actively working with governments and civil society groups to help educate them about the impact of these potential changes.</p><p>We’re looking forward to sharing our work today and hope that more interested parties join in developing these protocols. The projects we are announcing today were designed by experts from academia, industry, and hobbyists together and were built by engineers from Cloudflare Research (including the work of interns, which we will highlight) with everyone’s support Cloudflare.</p><p>If you’re interested in this type of work, <a href="https://www.cloudflare.com/careers/jobs/">we’re hiring</a>!</p> ]]></content:encoded>
            <category><![CDATA[Privacy Week]]></category>
            <category><![CDATA[Encryption]]></category>
            <category><![CDATA[Cryptography]]></category>
            <category><![CDATA[DNS]]></category>
            <category><![CDATA[DoH]]></category>
            <category><![CDATA[Authentication]]></category>
            <category><![CDATA[Passwords]]></category>
            <category><![CDATA[TLS]]></category>
            <category><![CDATA[Encrypted SNI]]></category>
            <category><![CDATA[Research]]></category>
            <guid isPermaLink="false">6Npild5sJTVfGo3GttHrTd</guid>
            <dc:creator>Nick Sullivan</dc:creator>
        </item>
        <item>
            <title><![CDATA[Time-Based One-Time Passwords for Phone Support]]></title>
            <link>https://blog.cloudflare.com/time-based-one-time-passwords-for-phone-support/</link>
            <pubDate>Fri, 17 Apr 2020 12:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare Enterprise customers can now authenticate themselves for phone support using TOTP tokens, either by using an authenticator app or generating single-use tokens from the Cloudflare Dashboard. ]]></description>
            <content:encoded><![CDATA[ <p></p><p>As part of Cloudflare’s support offering, we provide phone support to Enterprise customers who are experiencing critical business issues.</p><p>For account security, specific account settings and sensitive details are not discussed via phone. From today, we are providing Enterprise customers with the ability to configure phone authentication to allow for greater support to be offered over the phone without need to perform validation through support tickets.</p><p>After providing your email address to a Cloudflare Support representative, you can now provide a token generated from the Cloudflare dashboard or via a 2FA app like Google Authenticator. So, a customer is able to prove over the phone that they are who they say they are.</p>
    <div>
      <h3>Configuring Phone Authentication</h3>
      <a href="#configuring-phone-authentication">
        
      </a>
    </div>
    <p>If you are an existing Enterprise customer interested in phone support, please contact your Customer Success Manager for eligibility information and set-up. If you are interested in our Enterprise offering, please get in contact via our <a href="https://www.cloudflare.com/enterprise/">Enterprise plan</a> page.</p><p>If you already have phone support eligibility, you can generate single-use tokens from the Cloudflare dashboard or configure an authenticator app to do the same remotely.</p><p>On the support page, you will see a card called “Emergency Phone Support Hotline – Authentication”. From here you can generate a Single-Use Token for authenticating a single call or configure an Authenticator App to generate tokens from a 2FA app.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4fdSWKipRIJzxrRX8Dg6GC/da0686642c91f04169806f776754e7ae/1.png" />
            
            </figure><p>For more detailed instructions, please see the “Emergency Phone” section of the <a href="https://support.cloudflare.com/hc/en-us/articles/200172476-Contacting-Cloudflare-Support">Contacting Cloudflare Support</a> article on the Cloudflare Knowledge Base.</p>
    <div>
      <h3>How it Works</h3>
      <a href="#how-it-works">
        
      </a>
    </div>
    <p>A standardised approach for generating TOTPs (Time-Based One-Time Passwords) is described in <a href="https://tools.ietf.org/html/rfc6238">RFC 6238</a> – this is the approach that is often used for setting up Two Factor Authentication on websites.</p><p>When configuring a TOTP authenticator app, you are usually asked to scan a QR code or input a long alphanumeric string. This is a randomly generated secret that is shared between your local authenticator app and the web service where you are configuring TOTP. After TOTP is configured, this is stored between both the web server and your local device.</p><p>TOTP password generation relies on two key inputs; the shared secret and the number of seconds since the Unix epoch (<a href="https://en.wikipedia.org/wiki/Unix_time">Unix time</a>). The timestamp is integer divided by a validity period (often 30 seconds) and this value is put into a cryptographic hash function alongside the secret to generate an output. The hexadecimal output is then truncated to provide the decimal digits which are shown to the user. The <a href="https://en.wikipedia.org/wiki/Avalanche_effect">Avalanche Effect</a> means that whenever the inputs that go into the hash function change slightly (e.g. the timestamp increments), a completely different hash output is generated.</p><p>This approach is fairly widely used and is available in a number of libraries depending on your preferred programming language. However, as our phone validation functionality offers both authenticator app support and generation of a single-use token from the dashboard (where no shared secret exists) - some deviation was required.</p><p>We generate a single use token by creating a hash of an internal user ID combined with a Cloudflare-internal secret, which in turn is used to generate <a href="https://tools.ietf.org/html/rfc6238">RFC 6238</a> compliant time-based one-time passwords. Similarly, this service can generate random passwords for any user without needing to store additional secrets. This is then surfaced to the user every 30 seconds via a JavaScript request without exposing the secret used to generate the token.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1Dxw2QbU0IphZQTOxuQWDU/8447e7b258f87524c2674b8130c070cd/2.png" />
            
            </figure><p>One question you may be asking yourself after all of this is why don’t we simply use the 2FA mechanism which users use to login for phone validation too? Firstly, we don’t want to accustom users to providing their 2FA tokens to anyone else (they should purely be used for logging in). Secondly, as you may have noticed - we recently began <a href="/cloudflare-now-supports-security-keys-with-web-authentication-webauthn/">supporting WebAuthn</a> keys for logging in, as these are physical tokens used for website authentication they aren’t suited to usage on a mobile device.</p><p>To improve user experience during a phone call, we also validate tokens in the previous time step in the event it has expired by the time the user has read it out (indeed, RFC 6238 provides that “at most one time step is allowed as the network delay”). This means a token can be valid for up to one minute.</p><p>The APIs powering this service are then wrapped with API gateways that offer audit logging both for customer actions and actions completed by staff members. This provides a clear audit trail for customer authentication.</p>
    <div>
      <h3>Future Work</h3>
      <a href="#future-work">
        
      </a>
    </div>
    <p>Authentication is a critical component to securing customer support interactions. Authentication tooling must develop alongside support contact channels; from web forms behind logins to using <a href="https://support.zendesk.com/hc/en-us/articles/360022185314-Enabling-authenticated-visitors-in-the-Chat-widget">JWT tokens</a> for validating live chat sessions and now TOTP phone authentication. This is complimented by technical support engineers who will manage risk by routing certain issues into traditional support tickets and being able to refer some cases to named customer success managers for approval.</p><p>We are constantly advancing our support experience; for example, we plan to further improve our Enterprise Phone Support by giving users the ability to request a callback from a support agent within our dashboard. As always, right here on our blog we’ll keep you up-to-date with improvements in our service.</p> ]]></content:encoded>
            <category><![CDATA[Security]]></category>
            <category><![CDATA[Support]]></category>
            <category><![CDATA[Authentication]]></category>
            <guid isPermaLink="false">4gyjAYowUFQrLkJBDNEmfl</guid>
            <dc:creator>Junade Ali</dc:creator>
            <dc:creator>Andronicus Riyono</dc:creator>
        </item>
        <item>
            <title><![CDATA[Three new ways teams are using Cloudflare Access]]></title>
            <link>https://blog.cloudflare.com/three-new-ways-teams-are-using-cloudflare-access/</link>
            <pubDate>Wed, 15 Aug 2018 21:00:00 GMT</pubDate>
            <description><![CDATA[ Since leaving beta three weeks ago, Cloudflare Access has become our fastest-growing subscription service. Every day, more teams are using Access to leave their VPN behind and connect to applications quickly and securely from anywhere in the world. ]]></description>
            <content:encoded><![CDATA[ <p>Since <a href="/cloudflare-access-now-teams-of-any-size-can-turn-off-their-vpn/">leaving</a> beta three weeks ago, <a href="https://www.cloudflare.com/products/cloudflare-access/">Cloudflare Access</a> has become our fastest-growing subscription service. Every day, more teams are using Access to leave their VPN behind and <a href="https://www.cloudflare.com/application-services/solutions/">connect to applications quickly and securely</a> from anywhere in the world.</p><p>We’ve heard from a number of teams about how they’re using Access. Each team has unique needs to consider as they move away from a VPN and to a zero trust model. In a zero trust framework, each request has to prove that a given application should trust its attempt to reach a secure tool. In this post, we’re highlighting some of the solutions that groups are using to transition to Cloudflare Access.</p>
    <div>
      <h3>Solution 1: Collaborate with External Partners</h3>
      <a href="#solution-1-collaborate-with-external-partners">
        
      </a>
    </div>
    <p>Cloudflare Access integrates with popular identity providers (IdPs) so that your team can reach internal applications without adding more credentials. However, teams rarely work in isolation. They frequently rely on external partners who also need to reach shared tools.</p><p>How to grant and manage permissions with external partners poses a security risk. Just because you are working with a third-party doesn’t mean they should have credentials to your IdP. They typically need access to a handful of tools, not all of your internal resources.</p><p>We’ve heard from Access customers who are increasingly using the <a href="https://developers.cloudflare.com/access/configuring-identity-providers/one-time-pin/">One-Time Pin</a> feature to solve this problem. With One-Time Pin, you can grant access to third-party users without adding them to your IdP. Your internal team will continue to use their IdP credentials to authenticate while external users input their email address and receive a single-use code in their inbox. Here’s how your team can set this up:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1jRn85wBjEPYkElAmCMk6Y/ba488843a97467a54a014062bb4adb4f/login_methods_banner.png" />
            
            </figure><p>In this example, we have Okta configured as our IdP. We have also enabled One-Time Pin as an additional login method.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/oATC4NprtH5FzVE4XSwSF/f22157bf06b4faa9c5da4f2dc6634a28/group_creation.png" />
            
            </figure><p>Now that both login options are available, we can decide who should be able to reach our application. We’ll start by creating a new Access Group. An Access Group defines a set of users. We’ll name the group “Third-Party Partners” and include the email addresses of the individuals who need permission. Once the list is complete, the group can be saved.</p><p>Since Access Groups can be reused across policies, adding or removing a user from this list will apply to all policies that use the “Third-Party Partners” group.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5mj98ujL0a0HDNoLl5ZkLC/f76445742a09f63a8503d768c61ce24e/rule_with_group.png" />
            
            </figure><p>Now that we have saved an Access Group, we can return to the administration panel and build a policy based on that group membership. First, we need to make sure our internal team can reach the application. To do so, we’ll create an Allow decision and include emails ending in our @widgetcorp.tech domain. Since that domain is tied to our Okta account, our internal team can continue to use Okta to reach the tool.</p><p>Next, we’ll need a second Include rule in the same policy for the external teams. For this rule, select “Access Groups” from the drop-down options. Once selected, we can pick the “Third-Party Partners” group that was saved in the previous step. This will allow any user who is a member of that group to reach the application.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/iXlE1Qx9OktkT60HdCi8S/7a4928c35c9a105af235ace5f03b7c30/IdP-Options.png" />
            
            </figure><p>Now when users attempt to reach the application, they are presented with two options. The internal team can continue to login with Okta. Third-party partners can instead select the One-Time Pin option.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7oJwXAntfENoTSwMfJfHce/1cdc0bb9b48415ad1bc4ebc2e2fcdf58/input_pin-1.png" />
            
            </figure><p>When they choose One-Time Pin, they will be prompted to input their email address. Access will send a one-time code to their inbox. If they are an authorized user, as defined by the Access Group list, they can follow a link in that email or input the code to reach the application.</p>
    <div>
      <h3>Solution 2: Require a Specific Network</h3>
      <a href="#solution-2-require-a-specific-network">
        
      </a>
    </div>
    <p>For some applications, you want to ensure that your end users are both part of an approved list and originate from a known connection, like a secure office network. Building a rule with this requirement adds an extra layer of scrutiny to each request. Teams are using Access to enforce more comprehensive requirements like this one by creating policies with multiple rules. You can set this up for a specific application by creating a policy like the one below.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4rgoWyLtPsAj62jj0Qd4gM/d9aaa21c7c8a0176fd65d7a329ccccb4/office-network-1.png" />
            
            </figure><p>First, create a new <a href="https://developers.cloudflare.com/access/setting-up-access/access-groups/">Access Group</a>. List the addresses or ranges you want to require. When adding multiple, use the Include rule, which means users must originate from one of the addresses in the list. You can give the group a title like "Office Networks" and save it.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2msQf6MtrFMfrzleR9OXIL/bcc95ae2a9dee7023ed5ec7ab1ca8760/require-the-office-2.png" />
            
            </figure><p>Next, create a new policy. First, allow users to authenticate with their IdP credentials by including your team’s email domain or the group name from your IdP. Second, add a rule to require that requests originate from the network(s) you defined in your Access Group.</p><p>In this example, users who want to reach the site would first need to authenticate with the IdP you have configured. In addition, Access will check to make sure their request is coming from the IP range you configured in the second rule underneath the “Require” line.</p>
    <div>
      <h3>Solution 3: Reach On-Premise Applications with Argo Tunnel</h3>
      <a href="#solution-3-reach-on-premise-applications-with-argo-tunnel">
        
      </a>
    </div>
    <p>Some applications are too sensitive to expose to the public internet through firewall ports and access control lists (ACLs). At first glance, these tools seem doomed to live on-premise and require a VPN when your team members are away from the office.</p><p>Cloudflare Access can still help. When you combine Access with Cloudflare <a href="https://www.cloudflare.com/products/argo-tunnel/">Argo Tunnel</a>, you can avoid the hassle of a VPN while making your on-premise applications available to end users through secure connections to the Internet. Argo Tunnel securely exposes your web servers to the Internet without opening up firewall ports or requiring ACL configuration. Argo Tunnel ensures that requests route through Cloudflare before reaching the web server.</p><p>To configure Argo Tunnel, you’ll first need to create a zone in Cloudflare to serve as the hostname for your web server. Argo Tunnel creates a DNS entry for that hostname so that visitors can find it. Next, lock down that hostname with a new Access policy. Once you’re ready, you can proceed to install Argo Tunnel on your web server by following the instructions <a href="https://developers.cloudflare.com/argo-tunnel/quickstart/">here</a>.</p><p>With Access and Argo Tunnel, teams are making their on-premise applications feel and operate like SaaS products.</p>
    <div>
      <h3>What's next?</h3>
      <a href="#whats-next">
        
      </a>
    </div>
    <p>We’re always excited to hear about how customers use our products. The feedback helps us iterate and build better solutions for your teams. We’d like to thank our Access beta users, as well as early adopters, for their input. We’re excited to continue to improving Access so that your team can continue transitioning away from your VPN.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[VPN]]></category>
            <category><![CDATA[Authentication]]></category>
            <category><![CDATA[Security]]></category>
            <category><![CDATA[Cloudflare Tunnel]]></category>
            <guid isPermaLink="false">7B7KomXIVhnTxqytMe1vSM</guid>
            <dc:creator>Sam Rhea</dc:creator>
        </item>
        <item>
            <title><![CDATA[Cloudflare Access: Now teams of any size can turn off their VPN]]></title>
            <link>https://blog.cloudflare.com/cloudflare-access-now-teams-of-any-size-can-turn-off-their-vpn/</link>
            <pubDate>Tue, 24 Jul 2018 16:15:28 GMT</pubDate>
            <description><![CDATA[ Using a VPN breaks your workflow with logins, needs separate credentials for admins to handle, slows you when not in the office, and brings security risks that extend past mere inconvenience to users. ]]></description>
            <content:encoded><![CDATA[ <p></p><p>Using a VPN is painful. Logging-in interrupts your workflow. You have to remember a separate set of credentials, which your administrator has to manage. The VPN slows you down when you're away from the office. Beyond just inconvenience, a VPN can pose a real security risk. A single infected device or malicious user can compromise your network once inside the <a href="https://www.cloudflare.com/learning/access-management/what-is-the-network-perimeter/">perimeter</a>.</p><p>In response, large enterprises have deployed expensive zero trust solutions. The name sounds counterintuitive - don’t we want to add trust to our network security? <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/">Zero trust</a> refers to the default state of these tools. They trust no one; each request has to prove that itself. This architecture, most notably demonstrated at Google with Beyondcorp, has allowed teams to start to migrate to a more secure method of access control.</p><p>However, users of zero trust tools still suffer from the same latency problems they endured with old-school VPNs. Even worse, the price tag puts these tools out of reach for most teams.</p><p>Here at Cloudflare, we shared those same frustrations with VPNs. After evaluating our options, we realized we could build <a href="https://www.cloudflare.com/zero-trust/solutions/">a better zero trust solution</a> by leveraging some of the unique capabilities we have here at Cloudflare:</p>
    <div>
      <h3>Our <a href="https://www.cloudflare.com/network/">global</a> network of data centers</h3>
      <a href="#our-network-of-data-centers">
        
      </a>
    </div>
    <p>Cloudflare’s network spans 150+ data centers around the globe. With a data center within 10 ms of 95% of the world’s internet-connected population, we can bring content closer to the end user. We could beat the performance of both VPNs and existing zero trust tools by evaluating permissions and serving pages at the edge of our network.</p>
    <div>
      <h3>Cloudflare already protects your sites from threats</h3>
      <a href="#cloudflare-already-protects-your-sites-from-threats">
        
      </a>
    </div>
    <p>Cloudflare <a href="https://www.cloudflare.com/security/">shields your site from attacks</a> by sitting between your server and the rest of the internet. We could build on that experience by shielding your site from unauthorized users before the request ever reaches your origin.</p><p>With these foundations, we were able to build Cloudflare Access as a fast and secure way to <a href="https://www.cloudflare.com/application-services/solutions/">protect applications</a>. We started by using it internally. We migrated applications from our VPN to Access and suddenly our self-hosted tools felt like SaaS products.</p><p>We launched Access into beta at the <a href="/introducing-cloudflare-access/">start</a> of 2018. Today, we are excited to announce the release of Cloudflare Access to all customers at a price that makes it affordable for teams of any size to leave their VPN behind.</p>
    <div>
      <h2>A Quick Recap of Cloudflare Access</h2>
      <a href="#a-quick-recap-of-cloudflare-access">
        
      </a>
    </div>
    <p>Cloudflare <a href="https://www.cloudflare.com/products/cloudflare-access/">Access</a> controls who can reach your internal resources. You don’t need to change your hosting or add new components to your site to integrate with an identity provider. Access does the work for you.</p><p>Before any requests reach your origin, Access checks to make sure they are approved based on policies you configure. We integrate with popular identity providers, like GSuite and Okta, so that you don’t have to manage a new set of credentials.</p><p>When your team members need to get to their tools and documents behind Access, they will log in with the identity provider credentials managed by your organization. Once authorized, they’ll be able to access those protected resources for a duration that you define.</p><p>Your team can use your self-hosted tools as if they were a SaaS deployment. Cloudflare’s global network of 150+ data centers puts those resources closer to your end users, regardless of their location. Your administrators can control groups that should or shouldn’t be able to reach certain materials and review an audit log of account logins.</p>
    <div>
      <h2>BeyondCorp for YourCorp</h2>
      <a href="#beyondcorp-for-yourcorp">
        
      </a>
    </div>
    <p>Starting today, you will be able to sign up for an Access plan sized to meet the needs of your team. Access Basic only costs USD $3 per user, per month. The Basic plan can be connected to social identity providers, like Facebook or GitHub. The Access Premium plan starts at USD $5 per user, per month, and integrates with corporate identity providers like Okta, OneLogin, and G Suite. The price per user decreases for larger teams.</p><p>As in the beta, the first five users are still free.</p><p>Cloudflare wants to make enterprise-grade security available to every team. With Access, teams can select a plan that fits their size. Whether you have 5 or 5,000 employees, Access can ensure that your entire team has secure and fast access to the tools they need.</p>
    <div>
      <h2>New Policies: Control by IP or Build a Detour</h2>
      <a href="#new-policies-control-by-ip-or-build-a-detour">
        
      </a>
    </div>
    <p>Access works by requiring that users authenticate with their identity provider credentials to reach your site, or sections of it. However, sometimes you need to open paths for external services or outside groups of users.</p><p>As part of today’s release, you can create policies based on IP addresses. For example, if you have a secure office network, you can allowlist the office’s IP. Users outside the office will be required to authenticate with their IdP. Or you can require that a user both authenticate against the IdP and be using a specific IP address.</p><p>You can also build a detour to allow traffic to a specified path or subdomain to bypass Access. When enabled, Access will not check requests to that destination for authorization tokens. Traffic will still be protected by your standard Cloudflare features, like DDoS mitigation and SSL encryption.</p><p>This is helpful when third-party services need to reach your site. Say you manage a WordPress site where you want to control who can access protected resources. WordPress can provide additional functionality by creating a connection between the browser and the server using AJAX. To do so, WordPress needs to reach a particular endpoint. With Bypass, you can allow traffic to reach that endpoint while protecting the rest of your site.</p>
    <div>
      <h2>A Quick Demo of New Policy Rules</h2>
      <a href="#a-quick-demo-of-new-policy-rules">
        
      </a>
    </div>
    <p>When creating an Access policy, you can build with Allow or Deny criteria. In that same dropdown, you’ll find the new Bypass policy type. As described above, Access will ignore traffic set to bypass (whether it’s for the entire site or just a section of it).</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7GA0lBmZqdTjvVZA76SZ77/f55b0a370fd414f280bf0e7b19f8315f/Screen-Shot-2018-07-23-at-9.31.48-AM.png" />
            
            </figure><p>When defining policy rules, you can now use new criteria: <code>IP Ranges</code> and <code>Everyone</code>. You can configure Access to allow or deny requests that meet these profiles.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6vhw1rLLvK7auHZFPUqkDR/a10b15d6dab6d5d0957f13cf1dddbcd8/Screen-Shot-2018-07-23-at-9.32.25-AM.png" />
            
            </figure>
    <div>
      <h2>Access Groups</h2>
      <a href="#access-groups">
        
      </a>
    </div>
    <p>Zero trust solutions let you control who can access tools at a level more specific than “all.” However, defining access policies for the same set of individual users can be tedious. If you have a team of four engineers, and you want to connect them to multiple internal tools, you need to rebuild that “group” each time.</p><p>Starting today, you can create an Access Group to quickly apply policies to a set of users that meet membership rules you define. You can build groups based on a number of criteria. For example, create a group that only includes team members in a secure office by specifying the IP range. Or build a super group that consists of multiple, smaller groups defined in your identity provider.</p><p>Once you define Access Groups, you can create policies that apply to groups. Access Groups can be reused across sites in your account so that you can quickly reuse membership rules to create policies for all of your tools. Just select the Access Group from the dropdown. Whether you want to include your engineering team, require admin accounts, or exclude certain departments, you can do it with Access Groups.</p>
    <div>
      <h2>A quick demo of Access Groups</h2>
      <a href="#a-quick-demo-of-access-groups">
        
      </a>
    </div>
    <p>To create an Access Group, start by giving it a name. Groups use the same rule types as policies; you can configure group membership criteria based on inclusion, exclusion, and requirement.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4MBja6yUD2yFuKUfznYY3H/7c68230947b450a83b65acebce07fab5/Screen-Shot-2018-07-23-at-9.33.16-AM.png" />
            
            </figure><p>Once you select the type of filter, you can define membership rules based on email addresses, IP ranges, or groups from your identity provider.</p><p>When you have saved your group, you can return to modify a policy, or create a new one, and select your Access Group from the drop-down list to build policies based on it.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5PDfBDIqGJTs79x8nt5tqb/6cdecfab568d04a67ae8ede5d125b549/Screen-Shot-2018-07-23-at-9.33.58-AM.png" />
            
            </figure>
    <div>
      <h2>What’s next?</h2>
      <a href="#whats-next">
        
      </a>
    </div>
    <p>The new features are available today to all Access customers. You can read the documentation <a href="https://developers.cloudflare.com/access/about/">here</a>. To our beta customers - thank you for helping make Access better! You can continue to use Access in your current arrangement for the next 30 days. After August 24th, you will need to sign up for a plan. We’re excited to help your team turn off your VPN and improve the speed and security of your most important tools.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Product News]]></category>
            <category><![CDATA[VPN]]></category>
            <category><![CDATA[Authentication]]></category>
            <category><![CDATA[Security]]></category>
            <guid isPermaLink="false">5PKsgBm0KZUMtgouxmu4dM</guid>
            <dc:creator>Sam Rhea</dc:creator>
        </item>
        <item>
            <title><![CDATA[Now You Can Setup Centrify, OneLogin, Ping and Other Identity Providers with Cloudflare Access]]></title>
            <link>https://blog.cloudflare.com/new-identity-providers-with-cloudflare-access/</link>
            <pubDate>Mon, 23 Apr 2018 19:08:18 GMT</pubDate>
            <description><![CDATA[ Today we would like to announce support for two more Identity Providers with Cloudflare Access: Centrify and OneLogin. If you are using Centrify or OneLogin as your identity provider you can now easily integrate them with Cloudflare Access. ]]></description>
            <content:encoded><![CDATA[ <p>We use Cloudflare Access to secure our own internal tools instead of a VPN. As someone that does a lot of work on the train, I can attest this is awesome (though I might be biased). You can see it in action below. Instead of having to connect to a VPN to reach our internal jira, we just login with our Google account and we are good to go:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/66EeaOGaA29Ge4ilWvc8kg/42bc0260806755ff5905e6c57a443030/CFAccess-JIRAv3.gif" />
            
            </figure><p>Before today, you could setup Access if you used GSuite, Okta or Azure AD to manage your employee accounts. Today we would like to announce support for two more Identity Providers with Cloudflare Access: <a href="https://www.centrify.com/">Centrify</a> and <a href="https://www.onelogin.com/">OneLogin</a>.</p><p>We launched Cloudflare Access earlier this year and have been overwhelmed by the response from our customers and community. Customers tell us they love the simplicity of setting up Access to secure applications and integrate with their existing identity provider solution. Access helps customers implement a holistic solution for both corporate and remote employees without having to use a VPN.</p><p>If you are using Centrify or OneLogin as your identity provider you can now easily integrate them with Cloudflare Access and have your team members login with their accounts to securely reach your internal tools.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3Ja7n6yKRWlNqZg00CjWSN/398b05db0a48c4fc4098a044f0eadcaf/CFAccess-ssov3.gif" />
            
            </figure><p>Oh and one last thing, We have a new generic connector which allows you to integrate any OIDC based identity provider with Cloudflare Access. <a href="https://en.wikipedia.org/wiki/OpenID_Connect">OpenID Connect</a> (OIDC) is supported by many identity providers (some popular OIDC based Identity Providers are Ping Identity and Forgerock)</p><p>If you’re eager to get started, steps are below for configuring OneLogin, Centrify and a custom OIDC provider. Each take about 3-5 minutes. Hope you enjoy!</p>
    <div>
      <h3>Steps for setting up Centrify</h3>
      <a href="#steps-for-setting-up-centrify">
        
      </a>
    </div>
    <p>Login to your Centrify admin portal and click on apps.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4Mtdp3uJp4F4CpKZ6XJkBd/5c216719e92ef4208d3f5877e19109a7/cfy1.png" />
            
            </figure><p>Click on Add Web Apps and navigate to custom tab. Scroll down and click Add on OpenID Connect.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/72Mk8PuLt20Wc3YXpZyIR/90916ad14e0d4866fa8be45ea2ac1d02/cfy2.png" />
            
            </figure><p></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/JZR2XBOpVN44zeSV8jXR5/adbf36479f6faeca0d1dc3778e6c2a86/cfy3.png" />
            
            </figure><p>Click Yes on the Application modal to create an OpenID Connect app.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4HbONg5UwY3Kiana5ZK6ZL/8d020b377730a0bd7728362dae423519/cfy4.png" />
            
            </figure><p>Enter an Application ID and click save.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7lneON5LpL3GtMgRXvlKJB/e7e7874b44c7aa8111619e5f5c1e8ec7/cfy5.png" />
            
            </figure><p>Navigate to the trust tab and enter a strong application secret. Under the Service Provider configuration enter your application's <code>authentication domain</code> as the Resource application URL. Click Add on Authorized redirect URIs and put your <code>authentication domain/cdn-cgi/access/callback</code>. Click Save.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/37vnOWfySw7xPu41qHjcvf/b0195ad93018694eb44ce4c0f92a86e8/cfy6.png" />
            
            </figure><p></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/30bmxJ1A8zyCVuwy0VDMMi/8661a2f52eaf6602b3405f43d92ecbac/cfy7.png" />
            
            </figure><p></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1SDGGakLTEvDGkpaAIvJ3W/b89fcfac96317ec8d07848c5e53682a0/cfy8-1.png" />
            
            </figure><p>Now copy your Client ID, Client Secret, OpenID Connect Issuer URL without the forward slash and Application ID from Settings tab in the Centrify dashboard and then paste them into the Cloudflare dashboard.</p>
    <div>
      <h3>Steps for setting up OneLogin</h3>
      <a href="#steps-for-setting-up-onelogin">
        
      </a>
    </div>
    <p>Login to your Onelogin admin portal and click on custom connectors.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/CMNwom6XvxoXat3eRnqlY/f3f12d8d7c6f6daa5249be3ed495c467/ol1.png" />
            
            </figure><p>Click on New Connector</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4xeqClwLeKJKo0OI021YOz/c4ad03fac3b28d61a1d63b9d37f989f3/ol2.png" />
            
            </figure><p>Name the connector and select OpenID Connect as the sign on method.In the redirect URI field, put your authentication domain/cdn-cgi/access/callback. Click Save.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5TuzZH8UfZmR12BB9NiGxP/50826079e277ae0a81585b92e255e4fd/ol3.png" />
            
            </figure><p>Click on More Actions and select Add App to Connector.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2XV8QlsxBvnZ22b2lVclSy/7d5ae9ef2be3dac2426319dc5b1cb3fb/ol4.png" />
            
            </figure><p>Name the app and click save.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5OC4RXHi0mhOjhurPEWxAc/75859c5f56ff632c4fdb86e8307f8736/ol5.png" />
            
            </figure><p>Navigate to the SSO tab and click on show client secret.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4JxZ3UnckodE00g1AnWEKp/ddcd84fc272b5fd34ebc97d8fc48e335/ol6-1.png" />
            
            </figure><p>Now copy your Client ID and Client Secret from the Onelogin dashboard and then paste them into the Cloudflare dashboard.</p>
    <div>
      <h3>Setting up a custom identity provider using OIDC</h3>
      <a href="#setting-up-a-custom-identity-provider-using-oidc">
        
      </a>
    </div>
    <p>The following are the information you would need from your identity provider into the Cloudflare Dashboard.</p><ul><li><p>Client ID and Client Secret: IdPs let you create a client or an app for each custom integration. You can create one for Access and grab the client id and secret.</p></li><li><p>Auth URL: This is the authorization_endpoint URL of your IdP.</p></li><li><p>Token URL: This is the token_endpoint URL of your IdP.</p></li><li><p>Certificate URL: The jwks_uri endpoint of your IdP is where you get the keys used by the IdP to sign the tokens.</p></li></ul><p>All the above endpoint values can be obtained from your IdP's OIDC discovery endpoint which is also called as the well-known URL. For example if you use Ping as your identity the URL would be <code>&lt;hostname&gt;/.well-known/openid-configuration</code></p><p>Give your IdP connector a name of your choice by entering it in the Name field.</p><p>In your IdP's Authorized redirect URI field, put your <code>authentication domain/cdn-cgi/access/callback</code> URL.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Authentication]]></category>
            <category><![CDATA[Product News]]></category>
            <category><![CDATA[Security]]></category>
            <guid isPermaLink="false">pxzzVtHR46jBBt3HF3i65</guid>
            <dc:creator>Venkat Viswanathan</dc:creator>
        </item>
        <item>
            <title><![CDATA[Introducing Cloudflare Access: Like BeyondCorp, But You Don’t Have To Be A Google Employee To Use It]]></title>
            <link>https://blog.cloudflare.com/introducing-cloudflare-access/</link>
            <pubDate>Wed, 17 Jan 2018 14:00:00 GMT</pubDate>
            <description><![CDATA[ Tell me if this sounds familiar: any connection from inside the corporate network is trusted and any connection from the outside is not. This is the security strategy used by most enterprises today. The problem is that security is breached, the attacker has access to everything. ]]></description>
            <content:encoded><![CDATA[ <p>Tell me if this sounds familiar: any connection from inside the corporate network is trusted and any connection from the outside is not. This is the security strategy used by most enterprises today. The problem is that once the firewall, or gateway, or VPN server creating this perimeter is breached, the attacker gets immediate, easy and trusted access to everything.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5IsJrQb7zEktUTKCXlyhRC/76964573751942b689aa78558e8452ac/4859761438_0778df5e52_o.jpg" />
            
            </figure><p> <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC BY-SA 2.0</a> image by <a href="https://www.flickr.com/photos/wwarby/">William Warby</a></p><p>There’s a second problem with the traditional <a href="https://www.cloudflare.com/learning/access-management/what-is-the-network-perimeter/">security perimeter model</a>. It either requires employees to be on the corporate network (i.e. physically in the office) or using a VPN, which slows down work because every page load makes extra round trips to the VPN server. After all this hassle, users on the VPN are still highly susceptible to phishing, on-path and SQL injection attacks.</p><p>A few years ago, Google pioneered a solution for their own employees called BeyondCorp. Instead of keeping their internal applications on the intranet, they made them accessible on the internet. There became no concept of in or outside the network. The network wasn’t some fortified citadel, everything was on the internet, and no connections were trusted. Everyone had to prove they are who they say they are.</p><p>Cloudflare’s mission has always been to democratize the tools of the internet giants. Today we are launching <a href="https://www.cloudflare.com/products/cloudflare-access/?utm_medium=website&amp;utm_source=blog&amp;utm_campaign=access-launch">Cloudflare Access</a>: a perimeter-less access control solution for cloud and on-premise applications. It’s like BeyondCorp, but you don’t have to be a Google employee to use it.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/XLMNQA8Z6Namjrt7hZ4Xn/da771b1a788432d6ebd25c62f671fc12/Access-blog-post-diagramv2.png" />
            
            </figure>
    <div>
      <h3>How does Cloudflare Access work ?</h3>
      <a href="#how-does-cloudflare-access-work">
        
      </a>
    </div>
    <p>Access acts as an unified reverse proxy to enforce access control by making sure every request is:</p><p><b>Authenticated:</b> Access integrates out of the box with most of the major identity providers like Google, Azure Active Directory and Okta meaning you can quickly connect your existing identity provider to Cloudflare and use the groups and users already created to gate access to your web applications. You can additionally use <a href="/introducing-tls-client-auth/">TLS with Client Authentication</a> and limit connections only to devices with a unique client certificate. Cloudflare will ensure the connecting device has a valid client certificate signed by the corporate CA, then Cloudflare will authenticate user credentials to grant access to an internal application.</p><p><b>Authorized:</b> The solution lets you easily <a href="https://www.cloudflare.com/application-services/solutions/">protect application resources</a> by configuring access policies for groups and individual users that you already created with your identity providers. For example, you could ensure with Access that only your company employees can get to your internal kanban board, or <a href="https://www.cloudflare.com/learning/security/how-to-improve-wordpress-security/">lock down</a> the wp-admin of your wordpress site.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5YkWbPMW9g32FDBjfC5T63/6006588940350759fa2d8c08fb72780d/access-policy.png" />
            
            </figure><p><b>Encrypted:</b> As Cloudflare makes all connections secure with HTTPS there is no need for a VPN.</p><p>To all the IT administrators who’ve been chastised by a globetrotting executive about how slow the VPN makes the Internet, Access is the perfect solution. It enables you to control and monitor access to applications by providing the following features via the dashboard and APIs:</p><ul><li><p>Easily change access policies</p></li><li><p>Modify session durations</p></li><li><p>Revoke existing user sessions</p></li><li><p>Centralized logging for audit and change logs</p></li></ul><p>Want an even faster connection to replace your VPN? Try pairing Access with <a href="https://www.cloudflare.com/argo/">Argo</a>. If you want to use Access in front of an internal application but don’t want to open up that application to the whole internet, you can combine Access with <a href="https://www.cloudflare.com/products/cloudflare-warp/">Argo Tunnel</a>. Argo Tunnel will make Cloudflare your application’s internet connection so you don’t even need a public IP. If you want to use Access in front of a legacy application and protect that application from unpatched vulnerabilities in legacy software, you can just click to enable the <a href="https://www.cloudflare.com/waf/">Web Application Firewall</a> and Cloudflare will inspect packets and block those with exploits.</p><p>Cloudflare Access allows employees to connect to corporate applications from any device, any place and on any kind of network. Access is powered by Cloudflare’s global network of 120+ data centers offering adequate redundancy and <a href="https://www.cloudflare.com/ddos/">DDoS protection</a> and proximity to wherever your employees or corporate office might be.</p>
    <div>
      <h3>Get Started:</h3>
      <a href="#get-started">
        
      </a>
    </div>
    <p>Access takes 5-10 minutes to setup and is free to try for up to one user (beyond that it’s $3 per seat per month, and you can <a href="https://www.cloudflare.com/plans/enterprise/contact/?utm_medium=website&amp;utm_source=product&amp;utm_campaign=access">contact sales</a> for bulk discounts). Cloudflare Access is fully available for our enterprise customers today and in open beta for our Free, Pro and Business plan customers. To get started, <a href="https://cloudflare.com/a/access">go to the Access tab of the Cloudflare dashboard</a>.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Speed & Reliability]]></category>
            <category><![CDATA[Authentication]]></category>
            <category><![CDATA[Product News]]></category>
            <category><![CDATA[Security]]></category>
            <guid isPermaLink="false">5SvTVXWabzrVQDt6K5wLf4</guid>
            <dc:creator>Venkat Viswanathan</dc:creator>
        </item>
    </channel>
</rss>